aboutsummaryrefslogtreecommitdiff
path: root/libjava/classpath/org/omg/PortableServer/ServantActivatorHelper.java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/classpath/org/omg/PortableServer/ServantActivatorHelper.java')
-rw-r--r--libjava/classpath/org/omg/PortableServer/ServantActivatorHelper.java31
1 files changed, 29 insertions, 2 deletions
diff --git a/libjava/classpath/org/omg/PortableServer/ServantActivatorHelper.java b/libjava/classpath/org/omg/PortableServer/ServantActivatorHelper.java
index 1aab99cee4c..8aa58b2f627 100644
--- a/libjava/classpath/org/omg/PortableServer/ServantActivatorHelper.java
+++ b/libjava/classpath/org/omg/PortableServer/ServantActivatorHelper.java
@@ -38,7 +38,10 @@ exception statement from your version. */
package org.omg.PortableServer;
+import gnu.CORBA.Minor;
+
import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
import org.omg.CORBA.BAD_PARAM;
import org.omg.CORBA.MARSHAL;
import org.omg.CORBA.ORB;
@@ -112,6 +115,26 @@ public abstract class ServantActivatorHelper
throw bad;
}
}
+
+ /**
+ * Narrow the given object to the ServantActivator. For the objects that are
+ * always local, this operation does not differ from the ordinary
+ * {@link #narrow} (ClassCastException will be thrown if narrowing something
+ * different).
+ *
+ * @param obj the object to cast.
+ *
+ * @return the casted ServantActivator.
+ *
+ * @since 1.5
+ *
+ * @see OMG issue 4158.
+ */
+ public static ServantActivator unchecked_narrow(org.omg.CORBA.Object obj)
+ {
+ return narrow(obj);
+ }
+
/**
* This should read the servant activator, but it cannot be transferred
@@ -125,7 +148,9 @@ public abstract class ServantActivatorHelper
*/
public static ServantActivator read(InputStream input)
{
- throw new MARSHAL();
+ MARSHAL m = new MARSHAL("Inappropriate");
+ m.minor = Minor.Inappropriate;
+ throw m;
}
/**
@@ -140,6 +165,8 @@ public abstract class ServantActivatorHelper
*/
public static void write(OutputStream output, ServantActivator value)
{
- throw new MARSHAL();
+ MARSHAL m = new MARSHAL("Inappropriate");
+ m.minor = Minor.Inappropriate;
+ throw m;
}
} \ No newline at end of file