home *** CD-ROM | disk | FTP | other *** search
- package java.rmi.activation;
-
- import java.lang.reflect.Constructor;
- import java.rmi.MarshalledObject;
- import java.rmi.NoSuchObjectException;
- import java.rmi.Remote;
- import java.rmi.RemoteException;
- import java.rmi.server.ExportException;
- import java.rmi.server.RMIClientSocketFactory;
- import java.rmi.server.RMIServerSocketFactory;
- import java.rmi.server.RemoteServer;
- import java.rmi.server.ServerRef;
- import sun.rmi.server.ActivatableRef;
- import sun.rmi.transport.ObjectTable;
-
- public abstract class Activatable extends RemoteServer {
- // $FF: renamed from: id java.rmi.activation.ActivationID
- private ActivationID field_0;
- private static final long serialVersionUID = -3120617863591563455L;
- private static Class[] idPortParamTypes;
- private static Class[] idPortFactoryParamTypes;
- // $FF: synthetic field
- static Class class$java$rmi$activation$ActivationID;
- // $FF: synthetic field
- static Class class$java$rmi$server$RMIClientSocketFactory;
- // $FF: synthetic field
- static Class class$java$rmi$server$RMIServerSocketFactory;
- // $FF: synthetic field
- static Class class$java$rmi$server$ServerRef;
-
- protected Activatable(String var1, MarshalledObject var2, boolean var3, int var4) throws ActivationException, RemoteException {
- this.field_0 = exportObject(this, var1, var2, var3, var4);
- }
-
- protected Activatable(String var1, MarshalledObject var2, boolean var3, int var4, RMIClientSocketFactory var5, RMIServerSocketFactory var6) throws ActivationException, RemoteException {
- this.field_0 = exportObject(this, var1, var2, var3, var4, var5, var6);
- }
-
- protected Activatable(ActivationID var1, int var2) throws RemoteException {
- this.field_0 = var1;
- exportObject(this, var1, var2);
- }
-
- protected Activatable(ActivationID var1, int var2, RMIClientSocketFactory var3, RMIServerSocketFactory var4) throws RemoteException {
- this.field_0 = var1;
- exportObject(this, var1, var2, var3, var4);
- }
-
- protected ActivationID getID() {
- return this.field_0;
- }
-
- public static Remote register(ActivationDesc var0) throws UnknownGroupException, ActivationException, RemoteException {
- ActivationID var1 = ActivationGroup.getSystem().registerObject(var0);
- return ActivatableRef.getStub(var0, var1);
- }
-
- public static boolean inactive(ActivationID var0) throws UnknownObjectException, ActivationException, RemoteException {
- return ActivationGroup.currentGroup().inactiveObject(var0);
- }
-
- public static void unregister(ActivationID var0) throws UnknownObjectException, ActivationException, RemoteException {
- ActivationGroup.getSystem().unregisterObject(var0);
- }
-
- public static ActivationID exportObject(Remote var0, String var1, MarshalledObject var2, boolean var3, int var4) throws ActivationException, RemoteException {
- ActivationDesc var5 = new ActivationDesc(var0.getClass().getName(), var1, var2, var3);
- ActivationID var6 = ActivationGroup.getSystem().registerObject(var5);
- exportObject(var0, var6, var4);
- ActivationGroup.currentGroup().activeObject(var6, var0);
- return var6;
- }
-
- public static ActivationID exportObject(Remote var0, String var1, MarshalledObject var2, boolean var3, int var4, RMIClientSocketFactory var5, RMIServerSocketFactory var6) throws ActivationException, RemoteException {
- ActivationDesc var7 = new ActivationDesc(var0.getClass().getName(), var1, var2, var3);
- ActivationID var8 = ActivationGroup.getSystem().registerObject(var7);
- exportObject(var0, var8, var4, var5, var6);
- ActivationGroup.currentGroup().activeObject(var8, var0);
- return var8;
- }
-
- public static Remote exportObject(Remote var0, ActivationID var1, int var2) throws RemoteException {
- Object[] var3 = new Object[]{var1, new Integer(var2)};
- return exportObject(var0, "ActivatableServerRef", idPortParamTypes, var3);
- }
-
- public static Remote exportObject(Remote var0, ActivationID var1, int var2, RMIClientSocketFactory var3, RMIServerSocketFactory var4) throws RemoteException {
- Object[] var5 = new Object[]{var1, new Integer(var2), var3, var4};
- return exportObject(var0, "ActivatableServerRef", idPortFactoryParamTypes, var5);
- }
-
- public static boolean unexportObject(Remote var0, boolean var1) throws NoSuchObjectException {
- return ObjectTable.unexportObject(var0, var1);
- }
-
- private static Remote exportObject(Remote var0, String var1, Class[] var2, Object[] var3) throws RemoteException {
- String var4 = "sun.rmi.server." + var1;
-
- Class var5;
- try {
- var5 = Class.forName(var4);
- } catch (ClassNotFoundException var8) {
- throw new ExportException("No class found for server ref type: " + var1);
- }
-
- if (!(class$java$rmi$server$ServerRef == null ? (class$java$rmi$server$ServerRef = class$("java.rmi.server.ServerRef")) : class$java$rmi$server$ServerRef).isAssignableFrom(var5)) {
- throw new ExportException("Server ref class not instance of " + (class$java$rmi$server$ServerRef == null ? (class$java$rmi$server$ServerRef = class$("java.rmi.server.ServerRef")) : class$java$rmi$server$ServerRef).getName() + ": " + var5.getName());
- } else {
- ServerRef var6;
- try {
- Constructor var7 = var5.getConstructor(var2);
- var6 = (ServerRef)var7.newInstance(var3);
- if (var0 instanceof Activatable) {
- ((Activatable)var0).ref = var6;
- }
- } catch (Exception var9) {
- throw new ExportException("Exception creating instance of server ref class: " + var5.getName(), var9);
- }
-
- return var6.exportObject(var0, (Object)null);
- }
- }
-
- // $FF: synthetic method
- static Class class$(String var0) {
- try {
- return Class.forName(var0);
- } catch (ClassNotFoundException var2) {
- throw new NoClassDefFoundError(((Throwable)var2).getMessage());
- }
- }
-
- static {
- idPortParamTypes = new Class[]{class$java$rmi$activation$ActivationID == null ? (class$java$rmi$activation$ActivationID = class$("java.rmi.activation.ActivationID")) : class$java$rmi$activation$ActivationID, Integer.TYPE};
- idPortFactoryParamTypes = new Class[]{class$java$rmi$activation$ActivationID == null ? (class$java$rmi$activation$ActivationID = class$("java.rmi.activation.ActivationID")) : class$java$rmi$activation$ActivationID, Integer.TYPE, class$java$rmi$server$RMIClientSocketFactory == null ? (class$java$rmi$server$RMIClientSocketFactory = class$("java.rmi.server.RMIClientSocketFactory")) : class$java$rmi$server$RMIClientSocketFactory, class$java$rmi$server$RMIServerSocketFactory == null ? (class$java$rmi$server$RMIServerSocketFactory = class$("java.rmi.server.RMIServerSocketFactory")) : class$java$rmi$server$RMIServerSocketFactory};
- }
- }
-