mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-26 02:30:30 +08:00
MessageFormat.java: Removed some whitespace.
* java/text/MessageFormat.java: Removed some whitespace. * Makefile.in: Rebuilt. * Makefile.am (awt_java_source_files): Added new files. * gnu/javax/rmi/PortableServer.java, gnu/javax/rmi/CORBA/DelegateFactory.java, gnu/javax/rmi/CORBA/GetDelegateInstanceException.java, gnu/javax/rmi/CORBA/PortableRemoteObjectDelegateImpl.java, gnu/javax/rmi/CORBA/StubDelegateImpl.java, gnu/javax/rmi/CORBA/UtilDelegateImpl.java, gnu/javax/rmi/CORBA/ValueHandlerImpl.java, javax/rmi/BAD_OPERATION.java, javax/rmi/ORB.java, javax/rmi/PortableRemoteObject.java, javax/rmi/CORBA/ClassDesc.java, javax/rmi/CORBA/ObjectImpl.java, javax/rmi/CORBA/PortableRemoteObjectDelegate.java, javax/rmi/CORBA/Stub.java, javax/rmi/CORBA/StubDelegate.java, javax/rmi/CORBA/SystemException.java, javax/rmi/CORBA/Tie.java, javax/rmi/CORBA/Util.java, javax/rmi/CORBA/UtilDelegate.java, javax/rmi/CORBA/ValueHandler.java: New files from Classpath. From-SVN: r65024
This commit is contained in:
parent
ce4a8f7d84
commit
20ba0464aa
@ -1,5 +1,25 @@
|
||||
2003-03-29 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* java/text/MessageFormat.java: Removed some whitespace.
|
||||
|
||||
* Makefile.in: Rebuilt.
|
||||
* Makefile.am (awt_java_source_files): Added new files.
|
||||
* gnu/javax/rmi/PortableServer.java,
|
||||
gnu/javax/rmi/CORBA/DelegateFactory.java,
|
||||
gnu/javax/rmi/CORBA/GetDelegateInstanceException.java,
|
||||
gnu/javax/rmi/CORBA/PortableRemoteObjectDelegateImpl.java,
|
||||
gnu/javax/rmi/CORBA/StubDelegateImpl.java,
|
||||
gnu/javax/rmi/CORBA/UtilDelegateImpl.java,
|
||||
gnu/javax/rmi/CORBA/ValueHandlerImpl.java,
|
||||
javax/rmi/BAD_OPERATION.java, javax/rmi/ORB.java,
|
||||
javax/rmi/PortableRemoteObject.java,
|
||||
javax/rmi/CORBA/ClassDesc.java, javax/rmi/CORBA/ObjectImpl.java,
|
||||
javax/rmi/CORBA/PortableRemoteObjectDelegate.java,
|
||||
javax/rmi/CORBA/Stub.java, javax/rmi/CORBA/StubDelegate.java,
|
||||
javax/rmi/CORBA/SystemException.java, javax/rmi/CORBA/Tie.java,
|
||||
javax/rmi/CORBA/Util.java, javax/rmi/CORBA/UtilDelegate.java,
|
||||
javax/rmi/CORBA/ValueHandler.java: New files from Classpath.
|
||||
|
||||
* java/lang/natClass.cc (newInstance): Put method name in
|
||||
exception.
|
||||
(getConstructor): Likewise.
|
||||
|
@ -767,6 +767,13 @@ gnu/java/beans/BeanInfoEmbryo.java \
|
||||
gnu/java/beans/EmptyBeanInfo.java \
|
||||
gnu/java/beans/ExplicitBeanInfo.java \
|
||||
gnu/java/beans/IntrospectionIncubator.java \
|
||||
gnu/javax/rmi/CORBA/DelegateFactory.java \
|
||||
gnu/javax/rmi/CORBA/GetDelegateInstanceException.java \
|
||||
gnu/javax/rmi/CORBA/PortableRemoteObjectDelegateImpl.java \
|
||||
gnu/javax/rmi/CORBA/StubDelegateImpl.java \
|
||||
gnu/javax/rmi/CORBA/UtilDelegateImpl.java \
|
||||
gnu/javax/rmi/CORBA/ValueHandlerImpl.java \
|
||||
gnu/javax/rmi/PortableServer.java \
|
||||
java/applet/Applet.java \
|
||||
java/applet/AppletStub.java \
|
||||
java/applet/AppletContext.java \
|
||||
@ -1123,6 +1130,19 @@ java/beans/VetoableChangeListenerProxy.java \
|
||||
java/beans/VetoableChangeSupport.java \
|
||||
java/beans/Visibility.java \
|
||||
java/beans/AppletInitializer.java \
|
||||
javax/rmi/BAD_OPERATION.java \
|
||||
javax/rmi/ORB.java \
|
||||
javax/rmi/PortableRemoteObject.java \
|
||||
javax/rmi/CORBA/ClassDesc.java \
|
||||
javax/rmi/CORBA/ObjectImpl.java \
|
||||
javax/rmi/CORBA/PortableRemoteObjectDelegate.java \
|
||||
javax/rmi/CORBA/StubDelegate.java \
|
||||
javax/rmi/CORBA/Stub.java \
|
||||
javax/rmi/CORBA/SystemException.java \
|
||||
javax/rmi/CORBA/Tie.java \
|
||||
javax/rmi/CORBA/UtilDelegate.java \
|
||||
javax/rmi/CORBA/Util.java \
|
||||
javax/rmi/CORBA/ValueHandler.java \
|
||||
javax/swing/border/AbstractBorder.java \
|
||||
javax/swing/border/Border.java \
|
||||
javax/swing/border/CompoundBorder.java \
|
||||
|
@ -536,6 +536,13 @@ gnu/java/beans/BeanInfoEmbryo.java \
|
||||
gnu/java/beans/EmptyBeanInfo.java \
|
||||
gnu/java/beans/ExplicitBeanInfo.java \
|
||||
gnu/java/beans/IntrospectionIncubator.java \
|
||||
gnu/javax/rmi/CORBA/DelegateFactory.java \
|
||||
gnu/javax/rmi/CORBA/GetDelegateInstanceException.java \
|
||||
gnu/javax/rmi/CORBA/PortableRemoteObjectDelegateImpl.java \
|
||||
gnu/javax/rmi/CORBA/StubDelegateImpl.java \
|
||||
gnu/javax/rmi/CORBA/UtilDelegateImpl.java \
|
||||
gnu/javax/rmi/CORBA/ValueHandlerImpl.java \
|
||||
gnu/javax/rmi/PortableServer.java \
|
||||
java/applet/Applet.java \
|
||||
java/applet/AppletStub.java \
|
||||
java/applet/AppletContext.java \
|
||||
@ -892,6 +899,19 @@ java/beans/VetoableChangeListenerProxy.java \
|
||||
java/beans/VetoableChangeSupport.java \
|
||||
java/beans/Visibility.java \
|
||||
java/beans/AppletInitializer.java \
|
||||
javax/rmi/BAD_OPERATION.java \
|
||||
javax/rmi/ORB.java \
|
||||
javax/rmi/PortableRemoteObject.java \
|
||||
javax/rmi/CORBA/ClassDesc.java \
|
||||
javax/rmi/CORBA/ObjectImpl.java \
|
||||
javax/rmi/CORBA/PortableRemoteObjectDelegate.java \
|
||||
javax/rmi/CORBA/StubDelegate.java \
|
||||
javax/rmi/CORBA/Stub.java \
|
||||
javax/rmi/CORBA/SystemException.java \
|
||||
javax/rmi/CORBA/Tie.java \
|
||||
javax/rmi/CORBA/UtilDelegate.java \
|
||||
javax/rmi/CORBA/Util.java \
|
||||
javax/rmi/CORBA/ValueHandler.java \
|
||||
javax/swing/border/AbstractBorder.java \
|
||||
javax/swing/border/Border.java \
|
||||
javax/swing/border/CompoundBorder.java \
|
||||
@ -2984,7 +3004,14 @@ DEP_FILES = .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \
|
||||
.deps/gnu/java/util/prefs/MemoryBasedFactory.P \
|
||||
.deps/gnu/java/util/prefs/MemoryBasedPreferences.P \
|
||||
.deps/gnu/java/util/prefs/NodeReader.P \
|
||||
.deps/gnu/java/util/prefs/NodeWriter.P .deps/interpret.P \
|
||||
.deps/gnu/java/util/prefs/NodeWriter.P \
|
||||
.deps/gnu/javax/rmi/CORBA/DelegateFactory.P \
|
||||
.deps/gnu/javax/rmi/CORBA/GetDelegateInstanceException.P \
|
||||
.deps/gnu/javax/rmi/CORBA/PortableRemoteObjectDelegateImpl.P \
|
||||
.deps/gnu/javax/rmi/CORBA/StubDelegateImpl.P \
|
||||
.deps/gnu/javax/rmi/CORBA/UtilDelegateImpl.P \
|
||||
.deps/gnu/javax/rmi/CORBA/ValueHandlerImpl.P \
|
||||
.deps/gnu/javax/rmi/PortableServer.P .deps/interpret.P \
|
||||
.deps/java/applet/Applet.P .deps/java/applet/AppletContext.P \
|
||||
.deps/java/applet/AppletStub.P .deps/java/applet/AudioClip.P \
|
||||
.deps/java/awt/AWTError.P .deps/java/awt/AWTEvent.P \
|
||||
@ -3824,6 +3851,14 @@ DEP_FILES = .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \
|
||||
.deps/javax/print/attribute/Attribute.P \
|
||||
.deps/javax/print/attribute/AttributeSet.P \
|
||||
.deps/javax/print/attribute/PrintRequestAttributeSet.P \
|
||||
.deps/javax/rmi/BAD_OPERATION.P .deps/javax/rmi/CORBA/ClassDesc.P \
|
||||
.deps/javax/rmi/CORBA/ObjectImpl.P \
|
||||
.deps/javax/rmi/CORBA/PortableRemoteObjectDelegate.P \
|
||||
.deps/javax/rmi/CORBA/Stub.P .deps/javax/rmi/CORBA/StubDelegate.P \
|
||||
.deps/javax/rmi/CORBA/SystemException.P .deps/javax/rmi/CORBA/Tie.P \
|
||||
.deps/javax/rmi/CORBA/Util.P .deps/javax/rmi/CORBA/UtilDelegate.P \
|
||||
.deps/javax/rmi/CORBA/ValueHandler.P .deps/javax/rmi/ORB.P \
|
||||
.deps/javax/rmi/PortableRemoteObject.P \
|
||||
.deps/javax/sql/ConnectionEvent.P \
|
||||
.deps/javax/sql/ConnectionEventListener.P \
|
||||
.deps/javax/sql/ConnectionPoolDataSource.P .deps/javax/sql/DataSource.P \
|
||||
|
74
libjava/gnu/javax/rmi/CORBA/DelegateFactory.java
Normal file
74
libjava/gnu/javax/rmi/CORBA/DelegateFactory.java
Normal file
@ -0,0 +1,74 @@
|
||||
/* DelegateFactory.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package gnu.javax.rmi.CORBA;
|
||||
|
||||
import java.util.HashMap;
|
||||
import javax.rmi.CORBA.Util;
|
||||
|
||||
public class DelegateFactory
|
||||
{
|
||||
private static HashMap cache = new HashMap(4);
|
||||
|
||||
public static synchronized Object getInstance(String type)
|
||||
throws GetDelegateInstanceException
|
||||
{
|
||||
Object r = cache.get(type);
|
||||
if (r != null)
|
||||
return r;
|
||||
String dcname = System.getProperty("javax.rmi.CORBA." + type + "Class");
|
||||
if (dcname == null)
|
||||
{
|
||||
//throw new DelegateException
|
||||
// ("no javax.rmi.CORBA.XXXClass property sepcified.");
|
||||
dcname = "gnu.javax.rmi.CORBA." + type + "DelegateImpl";
|
||||
}
|
||||
try
|
||||
{
|
||||
Class dclass = Class.forName(dcname);
|
||||
r = dclass.newInstance();
|
||||
cache.put(type, r);
|
||||
return r;
|
||||
}
|
||||
catch(Exception e)
|
||||
{
|
||||
throw new GetDelegateInstanceException
|
||||
("Exception when trying to get delegate instance:" + dcname, e);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,58 @@
|
||||
/* GetDelegateInstanceException.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package gnu.javax.rmi.CORBA;
|
||||
|
||||
import java.io.PrintStream;
|
||||
import java.io.PrintWriter;
|
||||
|
||||
public class GetDelegateInstanceException
|
||||
extends Exception
|
||||
{
|
||||
private Throwable next;
|
||||
|
||||
public GetDelegateInstanceException(String msg)
|
||||
{
|
||||
super(msg);
|
||||
}
|
||||
|
||||
public GetDelegateInstanceException(String msg, Throwable next)
|
||||
{
|
||||
super(msg, next);
|
||||
}
|
||||
}
|
@ -0,0 +1,133 @@
|
||||
/* PortableRemoteObjectDelegateImpl.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package gnu.javax.rmi.CORBA;
|
||||
|
||||
import java.rmi.*;
|
||||
import java.rmi.server.*;
|
||||
import gnu.javax.rmi.*;
|
||||
import javax.rmi.CORBA.*;
|
||||
|
||||
public class PortableRemoteObjectDelegateImpl
|
||||
implements PortableRemoteObjectDelegate
|
||||
{
|
||||
|
||||
public PortableRemoteObjectDelegateImpl()
|
||||
{
|
||||
}
|
||||
|
||||
public void connect(Remote remote, Remote remote1)
|
||||
throws RemoteException
|
||||
{
|
||||
throw new Error("Not implemented for PortableRemoteObjectDelegateImpl");
|
||||
}
|
||||
|
||||
public void exportObject(Remote obj)
|
||||
throws RemoteException
|
||||
{
|
||||
PortableServer.exportObject(obj);
|
||||
}
|
||||
|
||||
public Object narrow(Object narrowFrom, Class narrowTo)
|
||||
throws ClassCastException
|
||||
{
|
||||
if (narrowTo == null)
|
||||
throw new ClassCastException("Can't narrow to null class");
|
||||
if (narrowFrom == null)
|
||||
return null;
|
||||
|
||||
Class fromClass = narrowFrom.getClass();
|
||||
Object result = null;
|
||||
|
||||
try
|
||||
{
|
||||
if (narrowTo.isAssignableFrom(fromClass))
|
||||
result = narrowFrom;
|
||||
else
|
||||
{
|
||||
System.out.println("We still haven't implement this case: narrow "
|
||||
+ narrowFrom + " of type " + fromClass + " to "
|
||||
+ narrowTo);
|
||||
Class[] cs = fromClass.getInterfaces();
|
||||
for (int i = 0; i < cs.length; i++)
|
||||
System.out.println(cs[i]);
|
||||
Exception e1 = new Exception();
|
||||
try
|
||||
{
|
||||
throw e1;
|
||||
}
|
||||
catch(Exception ee)
|
||||
{
|
||||
ee.printStackTrace();
|
||||
}
|
||||
System.exit(2);
|
||||
//throw new Error("We still haven't implement this case: narrow "
|
||||
// + narrowFrom + " of type " + fromClass + " to "
|
||||
// + narrowTo);
|
||||
/*
|
||||
ObjectImpl objimpl = (ObjectImpl)narrowFrom;
|
||||
if(objimpl._is_a(PortableServer.getTypeName(narrowTo)))
|
||||
result = PortableServer.getStubFromObjectImpl(objimpl, narrowTo);
|
||||
*/
|
||||
}
|
||||
}
|
||||
catch(Exception e)
|
||||
{
|
||||
result = null;
|
||||
}
|
||||
|
||||
if (result == null)
|
||||
throw new ClassCastException("Can't narrow from "
|
||||
+ fromClass + " to " + narrowTo);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public Remote toStub(Remote obj)
|
||||
throws NoSuchObjectException
|
||||
{
|
||||
return PortableServer.toStub(obj);
|
||||
}
|
||||
|
||||
public void unexportObject(Remote obj)
|
||||
throws NoSuchObjectException
|
||||
{
|
||||
PortableServer.unexportObject(obj);
|
||||
}
|
||||
|
||||
}
|
113
libjava/gnu/javax/rmi/CORBA/StubDelegateImpl.java
Normal file
113
libjava/gnu/javax/rmi/CORBA/StubDelegateImpl.java
Normal file
@ -0,0 +1,113 @@
|
||||
/* StubDelegateImpl.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package gnu.javax.rmi.CORBA;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.ObjectInputStream;
|
||||
import java.io.ObjectOutputStream;
|
||||
//import org.omg.CORBA.portable.Delegate;
|
||||
//import org.omg.CORBA.portable.InputStream;
|
||||
//import org.omg.CORBA.portable.OutputStream;
|
||||
//import org.omg.CORBA_2_3.portable.ObjectImpl;
|
||||
//import org.omg.CORBA.portable.ObjectImpl;
|
||||
//import org.omg.CORBA.BAD_OPERATION;
|
||||
//import org.omg.CORBA.ORB;
|
||||
import java.rmi.RemoteException;
|
||||
import javax.rmi.CORBA.Stub;
|
||||
import javax.rmi.CORBA.StubDelegate;
|
||||
import javax.rmi.CORBA.Tie;
|
||||
import javax.rmi.CORBA.StubDelegate;
|
||||
|
||||
public class StubDelegateImpl
|
||||
implements StubDelegate
|
||||
{
|
||||
|
||||
private int hashCode;
|
||||
|
||||
public StubDelegateImpl(){
|
||||
hashCode = 0;
|
||||
}
|
||||
// XXX javax.rmi.ORB -> org.omg.CORBA.ORB
|
||||
public void connect(Stub self, javax.rmi.ORB orb)
|
||||
throws RemoteException
|
||||
{
|
||||
throw new Error("Not implemented for StubDelegate");
|
||||
}
|
||||
|
||||
public boolean equals(Stub self, Object obj)
|
||||
{
|
||||
if(self == null || obj == null)
|
||||
return self == obj;
|
||||
if(!(obj instanceof Stub))
|
||||
return false;
|
||||
return self.hashCode() == ((Stub)obj).hashCode();
|
||||
}
|
||||
|
||||
public int hashCode(Stub self)
|
||||
{
|
||||
//FIX ME
|
||||
return hashCode;
|
||||
}
|
||||
|
||||
public String toString(Stub self)
|
||||
{
|
||||
try
|
||||
{
|
||||
return self._orb().object_to_string(self);
|
||||
}
|
||||
// XXX javax.rmi.BAD_OPERATION -> org.omg.CORBA.BAD_OPERATION
|
||||
catch(javax.rmi.BAD_OPERATION bad_operation)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public void readObject(Stub self, ObjectInputStream s)
|
||||
throws IOException, ClassNotFoundException
|
||||
{
|
||||
throw new Error("Not implemented for StubDelegate");
|
||||
}
|
||||
|
||||
public void writeObject(Stub self, ObjectOutputStream s)
|
||||
throws IOException
|
||||
{
|
||||
throw new Error("Not implemented for StubDelegate");
|
||||
}
|
||||
|
||||
}
|
152
libjava/gnu/javax/rmi/CORBA/UtilDelegateImpl.java
Normal file
152
libjava/gnu/javax/rmi/CORBA/UtilDelegateImpl.java
Normal file
@ -0,0 +1,152 @@
|
||||
/* UtilDelegateImpl.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package gnu.javax.rmi.CORBA;
|
||||
|
||||
import java.rmi.Remote;
|
||||
import java.rmi.RemoteException;
|
||||
import java.rmi.server.RMIClassLoader;
|
||||
import java.net.MalformedURLException;
|
||||
import java.io.*;
|
||||
//import org.omg.CORBA.ORB;
|
||||
//import org.omg.CORBA.SystemException;
|
||||
//import org.omg.CORBA.portable.InputStream;
|
||||
//import org.omg.CORBA.portable.OutputStream;
|
||||
import javax.rmi.CORBA.*;
|
||||
|
||||
public class UtilDelegateImpl
|
||||
implements UtilDelegate
|
||||
{
|
||||
// XXX javax.rmi.ORB -> org.omg.CORBA.ORB
|
||||
public Object copyObject(Object obj, javax.rmi.ORB orb)
|
||||
throws RemoteException
|
||||
{
|
||||
throw new Error("Not implemented for UtilDelegate");
|
||||
}
|
||||
|
||||
// XXX javax.rmi.ORB -> org.omg.CORBA.ORB
|
||||
public Object[] copyObjects(Object obj[], javax.rmi.ORB orb)
|
||||
throws RemoteException
|
||||
{
|
||||
throw new Error("Not implemented for UtilDelegate");
|
||||
}
|
||||
|
||||
public ValueHandler createValueHandler()
|
||||
{
|
||||
throw new Error("Not implemented for UtilDelegate");
|
||||
}
|
||||
|
||||
public String getCodebase(Class clz)
|
||||
{
|
||||
throw new Error("Not implemented for UtilDelegate");
|
||||
}
|
||||
|
||||
public Tie getTie(Remote target)
|
||||
{
|
||||
throw new Error("Not implemented for UtilDelegate");
|
||||
}
|
||||
|
||||
public boolean isLocal(Stub stub)
|
||||
throws RemoteException
|
||||
{
|
||||
throw new Error("Not implemented for UtilDelegate");
|
||||
}
|
||||
|
||||
public Class loadClass(String className, String remoteCodebase,
|
||||
ClassLoader loader)
|
||||
throws ClassNotFoundException
|
||||
{
|
||||
try{
|
||||
if (remoteCodebase == null)
|
||||
return RMIClassLoader.loadClass(className);
|
||||
else
|
||||
return RMIClassLoader.loadClass(remoteCodebase, className);
|
||||
}
|
||||
catch (MalformedURLException e1)
|
||||
{
|
||||
throw new ClassNotFoundException(className, e1);
|
||||
}
|
||||
catch(ClassNotFoundException e2)
|
||||
{
|
||||
if(loader != null)
|
||||
return loader.loadClass(className);
|
||||
else
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public RemoteException mapSystemException(SystemException ex)
|
||||
{
|
||||
throw new Error("Not implemented for UtilDelegate");
|
||||
}
|
||||
|
||||
public Object readAny(InputStream in)
|
||||
{
|
||||
throw new Error("Not implemented for UtilDelegate");
|
||||
}
|
||||
|
||||
public void registerTarget(Tie tie, Remote target)
|
||||
{
|
||||
throw new Error("Not implemented for UtilDelegate");
|
||||
}
|
||||
|
||||
public void unexportObject(Remote target)
|
||||
{
|
||||
throw new Error("Not implemented for UtilDelegate");
|
||||
}
|
||||
|
||||
public RemoteException wrapException(Throwable orig)
|
||||
{
|
||||
throw new Error("Not implemented for UtilDelegate");
|
||||
}
|
||||
|
||||
public void writeAbstractObject(OutputStream out, Object obj)
|
||||
{
|
||||
throw new Error("Not implemented for UtilDelegate");
|
||||
}
|
||||
|
||||
public void writeAny(OutputStream out, Object obj)
|
||||
{
|
||||
throw new Error("Not implemented for UtilDelegate");
|
||||
}
|
||||
|
||||
public void writeRemoteObject(OutputStream out, Object obj)
|
||||
{
|
||||
throw new Error("Not implemented for UtilDelegate");
|
||||
}
|
||||
}
|
82
libjava/gnu/javax/rmi/CORBA/ValueHandlerImpl.java
Normal file
82
libjava/gnu/javax/rmi/CORBA/ValueHandlerImpl.java
Normal file
@ -0,0 +1,82 @@
|
||||
/* ValueHandlerImpl.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package gnu.javax.rmi.CORBA;
|
||||
|
||||
import java.io.*;
|
||||
//import org.omg.CORBA.portable.InputStream;
|
||||
//import org.omg.CORBA.portable.OutputStream;
|
||||
//import org.omg.SendingContext.RunTime;
|
||||
import javax.rmi.CORBA.ValueHandler;
|
||||
|
||||
public class ValueHandlerImpl
|
||||
implements ValueHandler
|
||||
{
|
||||
|
||||
public String getRMIRepositoryID(Class clz)
|
||||
{
|
||||
throw new Error("Not implemented for ValueHandler");
|
||||
}
|
||||
|
||||
// XXX - Runtime -> RunTime
|
||||
public Runtime getRunTimeCodeBase()
|
||||
{
|
||||
throw new Error("Not implemented for ValueHandler");
|
||||
}
|
||||
|
||||
public boolean isCustomMarshaled(Class clz)
|
||||
{
|
||||
throw new Error("Not implemented for ValueHandler");
|
||||
}
|
||||
|
||||
// XXX - Runtime -> RunTime
|
||||
public Serializable readValue(InputStream in, int offset, Class clz, String repositoryID, Runtime sender)
|
||||
{
|
||||
throw new Error("Not implemented for ValueHandler");
|
||||
}
|
||||
|
||||
public Serializable writeReplace(Serializable value)
|
||||
{
|
||||
throw new Error("Not implemented for ValueHandler");
|
||||
}
|
||||
|
||||
public void writeValue(OutputStream out, Serializable value)
|
||||
{
|
||||
throw new Error("Not implemented for ValueHandler");
|
||||
}
|
||||
}
|
142
libjava/gnu/javax/rmi/PortableServer.java
Normal file
142
libjava/gnu/javax/rmi/PortableServer.java
Normal file
@ -0,0 +1,142 @@
|
||||
/* PortableServer.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package gnu.javax.rmi;
|
||||
|
||||
import java.util.Hashtable;
|
||||
import java.rmi.Remote;
|
||||
import java.rmi.RemoteException;
|
||||
import java.rmi.NoSuchObjectException;
|
||||
import java.rmi.server.ExportException;
|
||||
import java.rmi.server.UnicastRemoteObject;
|
||||
import java.rmi.server.RemoteStub;
|
||||
import javax.rmi.CORBA.*;
|
||||
//import org.omg.CORBA.portable.ObjectImpl;
|
||||
|
||||
/**
|
||||
* The relationship of PortableRemoteObjectImpl with PortableServer
|
||||
* is like that of UnicastRemoteObject with UnicastServer
|
||||
*/
|
||||
public class PortableServer
|
||||
{
|
||||
static private Hashtable tieCache = new Hashtable();
|
||||
static private Object NO_TIE = new Object();
|
||||
|
||||
public static final synchronized void exportObject(Remote obj)
|
||||
throws RemoteException
|
||||
{
|
||||
if(Util.getTie(obj) != null)
|
||||
return;
|
||||
|
||||
Tie tie = getTieFromRemote(obj);
|
||||
if (tie != null)
|
||||
Util.registerTarget(tie, obj);
|
||||
else
|
||||
UnicastRemoteObject.exportObject(obj);
|
||||
}
|
||||
|
||||
public static final void unexportObject(Remote obj)
|
||||
{
|
||||
if (Util.getTie(obj) != null)
|
||||
Util.unexportObject(obj);
|
||||
if (tieCache.get(obj) != null) //??
|
||||
tieCache.remove(obj);
|
||||
}
|
||||
|
||||
public static final Remote toStub(Remote obj)
|
||||
throws NoSuchObjectException
|
||||
{
|
||||
if (obj instanceof Stub || obj instanceof RemoteStub)
|
||||
return obj;
|
||||
|
||||
Tie tie = Util.getTie(obj);
|
||||
Remote stub;
|
||||
if (tie != null)
|
||||
stub = getStubFromTie(tie);
|
||||
else
|
||||
throw new NoSuchObjectException("Can't toStub an unexported object");
|
||||
return stub;
|
||||
}
|
||||
|
||||
static synchronized Tie getTieFromRemote(Remote obj)
|
||||
{
|
||||
Object tie = tieCache.get(obj);
|
||||
if (tie == null)
|
||||
{
|
||||
tie = getTieFromClass(obj.getClass());
|
||||
if(tie == null)
|
||||
tieCache.put(obj, NO_TIE);
|
||||
else
|
||||
tieCache.put(obj, tie);
|
||||
}
|
||||
else
|
||||
if(tie != NO_TIE)
|
||||
{
|
||||
try
|
||||
{
|
||||
tie = obj.getClass().newInstance();
|
||||
}
|
||||
catch(Exception _)
|
||||
{
|
||||
tie = null;
|
||||
}
|
||||
}
|
||||
else //NO_TIE
|
||||
tie = null;
|
||||
|
||||
return (Tie)tie;
|
||||
}
|
||||
|
||||
static synchronized Tie getTieFromClass(Class clz)
|
||||
{
|
||||
//FIX ME
|
||||
return null;
|
||||
}
|
||||
|
||||
public static Remote getStubFromTie(Tie tie)
|
||||
{
|
||||
//FIX ME
|
||||
return null;
|
||||
}
|
||||
|
||||
public static Remote getStubFromObjectImpl(ObjectImpl objimpl, Class toClass)
|
||||
{
|
||||
//FIX ME
|
||||
return null;
|
||||
}
|
||||
}
|
@ -144,7 +144,7 @@ final class MessageFormatElement
|
||||
public class MessageFormat extends Format
|
||||
{
|
||||
private static final long serialVersionUID = 6479157306784022952L;
|
||||
|
||||
|
||||
// Helper that returns the text up to the next format opener. The
|
||||
// text is put into BUFFER. Returns index of character after end of
|
||||
// string. Throws IllegalArgumentException on error.
|
||||
|
4
libjava/javax/rmi/BAD_OPERATION.java
Normal file
4
libjava/javax/rmi/BAD_OPERATION.java
Normal file
@ -0,0 +1,4 @@
|
||||
package javax.rmi;
|
||||
|
||||
/** XXX - Stub till we have org.omg.CORBA */
|
||||
public class BAD_OPERATION extends Exception { }
|
55
libjava/javax/rmi/CORBA/ClassDesc.java
Normal file
55
libjava/javax/rmi/CORBA/ClassDesc.java
Normal file
@ -0,0 +1,55 @@
|
||||
/* ClassDesc.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package javax.rmi.CORBA;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
public class ClassDesc
|
||||
implements Serializable
|
||||
{
|
||||
/*
|
||||
* The following is serialized form required by Java API Doc
|
||||
*/
|
||||
private String repid;
|
||||
private String codebase;
|
||||
|
||||
public ClassDesc()
|
||||
{
|
||||
}
|
||||
}
|
9
libjava/javax/rmi/CORBA/ObjectImpl.java
Normal file
9
libjava/javax/rmi/CORBA/ObjectImpl.java
Normal file
@ -0,0 +1,9 @@
|
||||
package javax.rmi.CORBA;
|
||||
|
||||
/** XXX - Stub till we have org.omg.CORBA */
|
||||
public class ObjectImpl
|
||||
{
|
||||
public ObjectImpl _orb() { return null; }
|
||||
public String object_to_string(ObjectImpl o)
|
||||
throws javax.rmi.BAD_OPERATION { return null; }
|
||||
}
|
63
libjava/javax/rmi/CORBA/PortableRemoteObjectDelegate.java
Normal file
63
libjava/javax/rmi/CORBA/PortableRemoteObjectDelegate.java
Normal file
@ -0,0 +1,63 @@
|
||||
/* PortableRemoteObjectDelegate.java -- Interface supporting PortableRemoteObject
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package javax.rmi.CORBA;
|
||||
|
||||
import java.rmi.*;
|
||||
|
||||
/**
|
||||
* A delegate is a singleton class that support delegation for method
|
||||
* implementation in PortableRemoteObject.
|
||||
*/
|
||||
public interface PortableRemoteObjectDelegate
|
||||
{
|
||||
void connect(Remote target, Remote source)
|
||||
throws RemoteException;
|
||||
|
||||
void exportObject(Remote obj)
|
||||
throws RemoteException;
|
||||
|
||||
Object narrow(Object narrowFrom, Class narrowTo)
|
||||
throws ClassCastException;
|
||||
|
||||
Remote toStub(Remote obj)
|
||||
throws NoSuchObjectException;
|
||||
|
||||
void unexportObject(Remote obj)
|
||||
throws NoSuchObjectException;
|
||||
}
|
120
libjava/javax/rmi/CORBA/Stub.java
Normal file
120
libjava/javax/rmi/CORBA/Stub.java
Normal file
@ -0,0 +1,120 @@
|
||||
/* Stub.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package javax.rmi.CORBA;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.ObjectInputStream;
|
||||
import java.io.ObjectOutputStream;
|
||||
import java.io.Serializable;
|
||||
import java.rmi.RemoteException;
|
||||
//import org.omg.CORBA.ORB;
|
||||
//import org.omg.CORBA_2_3.portable.ObjectImpl;
|
||||
//import org.omg.CORBA.portable.ObjectImpl;
|
||||
import gnu.javax.rmi.CORBA.DelegateFactory;
|
||||
import gnu.javax.rmi.CORBA.GetDelegateInstanceException;
|
||||
|
||||
public abstract class Stub extends ObjectImpl
|
||||
implements Serializable
|
||||
{
|
||||
private transient StubDelegate delegate;
|
||||
|
||||
protected Stub()
|
||||
{
|
||||
try
|
||||
{
|
||||
delegate = (StubDelegate)DelegateFactory.getInstance("Stub");
|
||||
}
|
||||
catch(GetDelegateInstanceException e)
|
||||
{
|
||||
delegate = null;
|
||||
}
|
||||
}
|
||||
|
||||
public int hashCode()
|
||||
{
|
||||
if(delegate != null)
|
||||
return delegate.hashCode(this);
|
||||
else
|
||||
return 0;
|
||||
}
|
||||
|
||||
public boolean equals(Object obj)
|
||||
{
|
||||
if(delegate != null)
|
||||
return delegate.equals(this, obj);
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
public String toString()
|
||||
{
|
||||
String s = null;
|
||||
if(delegate != null)
|
||||
s = delegate.toString(this);
|
||||
if(s == null)
|
||||
s = super.toString();
|
||||
return s;
|
||||
}
|
||||
|
||||
// XXX javax.rmi.ORB -> org.omg.CORBA.ORB
|
||||
public void connect(javax.rmi.ORB orb)
|
||||
throws RemoteException
|
||||
{
|
||||
if(delegate != null)
|
||||
delegate.connect(this, orb);
|
||||
}
|
||||
|
||||
/**
|
||||
* The following two routines are required by serialized form of Java API doc.
|
||||
*/
|
||||
private void readObject(ObjectInputStream stream)
|
||||
throws IOException, ClassNotFoundException
|
||||
{
|
||||
if(delegate != null)
|
||||
delegate.readObject(this, stream);
|
||||
}
|
||||
|
||||
private void writeObject(ObjectOutputStream stream)
|
||||
throws IOException
|
||||
{
|
||||
if(delegate != null)
|
||||
delegate.writeObject(this, stream);
|
||||
}
|
||||
|
||||
}
|
65
libjava/javax/rmi/CORBA/StubDelegate.java
Normal file
65
libjava/javax/rmi/CORBA/StubDelegate.java
Normal file
@ -0,0 +1,65 @@
|
||||
/* StubDelegate.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package javax.rmi.CORBA;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.ObjectInputStream;
|
||||
import java.io.ObjectOutputStream;
|
||||
import java.rmi.RemoteException;
|
||||
//import org.omg.CORBA.ORB;
|
||||
|
||||
public interface StubDelegate
|
||||
{
|
||||
|
||||
// XXX javax.rmi.ORB -> org.omg.CORBA.ORB
|
||||
void connect(Stub self, javax.rmi.ORB orb)
|
||||
throws RemoteException;
|
||||
|
||||
boolean equals(Stub self, Object obj);
|
||||
|
||||
int hashCode(Stub self);
|
||||
|
||||
void readObject(Stub self, ObjectInputStream s)
|
||||
throws IOException, ClassNotFoundException;
|
||||
|
||||
String toString(Stub self);
|
||||
|
||||
void writeObject(Stub self, ObjectOutputStream s)
|
||||
throws IOException;
|
||||
}
|
4
libjava/javax/rmi/CORBA/SystemException.java
Normal file
4
libjava/javax/rmi/CORBA/SystemException.java
Normal file
@ -0,0 +1,4 @@
|
||||
package javax.rmi.CORBA;
|
||||
|
||||
/** XXX - Stub till we have org.omg.CORBA */
|
||||
public class SystemException extends Exception { }
|
62
libjava/javax/rmi/CORBA/Tie.java
Normal file
62
libjava/javax/rmi/CORBA/Tie.java
Normal file
@ -0,0 +1,62 @@
|
||||
/* Tie.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package javax.rmi.CORBA;
|
||||
|
||||
import java.rmi.Remote;
|
||||
//import org.omg.CORBA.ORB;
|
||||
//import org.omg.CORBA.portable.InvokeHandler;
|
||||
|
||||
public interface Tie // XXX extends InvokeHandler
|
||||
{
|
||||
|
||||
void deactivate();
|
||||
|
||||
Remote getTarget();
|
||||
|
||||
// XXX javax.rmi.ORB -> org.omg.CORBA.ORB
|
||||
javax.rmi.ORB orb();
|
||||
|
||||
// XXX javax.rmi.ORB -> org.omg.CORBA.ORB
|
||||
void orb(javax.rmi.ORB orb);
|
||||
|
||||
void setTarget(Remote target);
|
||||
|
||||
// XXX Object -> org.omg.CORBA.Object
|
||||
Object thisObject();
|
||||
}
|
187
libjava/javax/rmi/CORBA/Util.java
Normal file
187
libjava/javax/rmi/CORBA/Util.java
Normal file
@ -0,0 +1,187 @@
|
||||
/* Util.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package javax.rmi.CORBA;
|
||||
|
||||
import java.rmi.Remote;
|
||||
import java.rmi.RemoteException;
|
||||
import java.lang.Object;
|
||||
import java.io.*;
|
||||
//import org.omg.CORBA.*;
|
||||
//import org.omg.CORBA.portable.InputStream;
|
||||
//import org.omg.CORBA.portable.OutputStream;
|
||||
import gnu.javax.rmi.CORBA.DelegateFactory;
|
||||
import gnu.javax.rmi.CORBA.GetDelegateInstanceException;
|
||||
|
||||
public class Util
|
||||
{
|
||||
|
||||
private static UtilDelegate delegate;
|
||||
static
|
||||
{
|
||||
try
|
||||
{
|
||||
delegate = (UtilDelegate)DelegateFactory.getInstance("Util");
|
||||
}
|
||||
catch(GetDelegateInstanceException e)
|
||||
{
|
||||
delegate = null;
|
||||
}
|
||||
}
|
||||
|
||||
private Util()
|
||||
{
|
||||
}
|
||||
|
||||
// XXX - javax.rmi.ORB -> org.omg.CORBA.ORB
|
||||
public static Object copyObject(Object obj, javax.rmi.ORB orb)
|
||||
throws RemoteException
|
||||
{
|
||||
if(delegate != null)
|
||||
return delegate.copyObject(obj, orb);
|
||||
else
|
||||
return null;
|
||||
}
|
||||
|
||||
// XXX - javax.rmi.ORB -> org.omg.CORBA.ORB
|
||||
public static Object[] copyObjects(Object obj[], javax.rmi.ORB orb)
|
||||
throws RemoteException
|
||||
{
|
||||
if(delegate != null)
|
||||
return delegate.copyObjects(obj, orb);
|
||||
else
|
||||
return null;
|
||||
}
|
||||
|
||||
public static ValueHandler createValueHandler()
|
||||
{
|
||||
if(delegate != null)
|
||||
return delegate.createValueHandler();
|
||||
else
|
||||
return null;
|
||||
}
|
||||
|
||||
public static String getCodebase(Class clz)
|
||||
{
|
||||
if(delegate != null)
|
||||
return delegate.getCodebase(clz);
|
||||
else
|
||||
return null;
|
||||
}
|
||||
|
||||
public static Tie getTie(Remote target)
|
||||
{
|
||||
if(delegate != null)
|
||||
return delegate.getTie(target);
|
||||
else
|
||||
return null;
|
||||
}
|
||||
|
||||
public static boolean isLocal(Stub stub)
|
||||
throws RemoteException
|
||||
{
|
||||
if(delegate != null)
|
||||
return delegate.isLocal(stub);
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
public static Class loadClass(String className, String remoteCodebase, ClassLoader loader)
|
||||
throws ClassNotFoundException
|
||||
{
|
||||
if(delegate != null)
|
||||
return delegate.loadClass(className, remoteCodebase, loader);
|
||||
else
|
||||
throw new ClassNotFoundException(className + ": delegate == null");
|
||||
}
|
||||
|
||||
public static RemoteException mapSystemException(SystemException ex)
|
||||
{
|
||||
if(delegate != null)
|
||||
return delegate.mapSystemException(ex);
|
||||
else
|
||||
return null;
|
||||
}
|
||||
|
||||
public static Object readAny(InputStream in)
|
||||
{
|
||||
if(delegate != null)
|
||||
return delegate.readAny(in);
|
||||
else
|
||||
return null;
|
||||
}
|
||||
|
||||
public static void registerTarget(Tie tie, Remote target)
|
||||
{
|
||||
if(delegate != null)
|
||||
delegate.registerTarget(tie, target);
|
||||
}
|
||||
|
||||
public static void unexportObject(Remote target)
|
||||
{
|
||||
if(delegate != null)
|
||||
delegate.unexportObject(target);
|
||||
}
|
||||
|
||||
public static RemoteException wrapException(Throwable orig)
|
||||
{
|
||||
if(delegate != null)
|
||||
return delegate.wrapException(orig);
|
||||
else
|
||||
return null;
|
||||
}
|
||||
|
||||
public static void writeAbstractObject(OutputStream out, Object obj)
|
||||
{
|
||||
if(delegate != null)
|
||||
delegate.writeAbstractObject(out, obj);
|
||||
}
|
||||
|
||||
public static void writeAny(OutputStream out, Object obj)
|
||||
{
|
||||
if(delegate != null)
|
||||
delegate.writeAny(out, obj);
|
||||
}
|
||||
|
||||
public static void writeRemoteObject(OutputStream out, Object obj)
|
||||
{
|
||||
if(delegate != null)
|
||||
delegate.writeRemoteObject(out, obj);
|
||||
}
|
||||
|
||||
}
|
84
libjava/javax/rmi/CORBA/UtilDelegate.java
Normal file
84
libjava/javax/rmi/CORBA/UtilDelegate.java
Normal file
@ -0,0 +1,84 @@
|
||||
/* UtilDelegate.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package javax.rmi.CORBA;
|
||||
|
||||
import java.rmi.Remote;
|
||||
import java.rmi.RemoteException;
|
||||
import java.io.*;
|
||||
//import org.omg.CORBA.ORB;
|
||||
//import org.omg.CORBA.SystemException;
|
||||
//import org.omg.CORBA.portable.InputStream;
|
||||
//import org.omg.CORBA.portable.OutputStream;
|
||||
|
||||
public interface UtilDelegate
|
||||
{
|
||||
|
||||
// XXX javax.rmi.ORB -> org.omg.CORBA.ORB
|
||||
Object copyObject(Object obj, javax.rmi.ORB orb) throws RemoteException;
|
||||
|
||||
// XXX javax.rmi.ORB -> org.omg.CORBA.ORB
|
||||
Object[] copyObjects(Object obj[], javax.rmi.ORB orb) throws RemoteException;
|
||||
|
||||
ValueHandler createValueHandler();
|
||||
|
||||
String getCodebase(Class clz);
|
||||
|
||||
Tie getTie(Remote target);
|
||||
|
||||
boolean isLocal(Stub stub) throws RemoteException;
|
||||
|
||||
Class loadClass(String className, String remoteCodebase,
|
||||
ClassLoader loader) throws ClassNotFoundException;
|
||||
|
||||
RemoteException mapSystemException(SystemException ex);
|
||||
|
||||
Object readAny(InputStream in);
|
||||
|
||||
void registerTarget(Tie tie, Remote target);
|
||||
|
||||
void unexportObject(Remote target);
|
||||
|
||||
RemoteException wrapException(Throwable orig);
|
||||
|
||||
void writeAbstractObject(OutputStream out, Object obj);
|
||||
|
||||
void writeAny(OutputStream out, Object obj);
|
||||
|
||||
void writeRemoteObject(OutputStream out, Object obj);
|
||||
}
|
63
libjava/javax/rmi/CORBA/ValueHandler.java
Normal file
63
libjava/javax/rmi/CORBA/ValueHandler.java
Normal file
@ -0,0 +1,63 @@
|
||||
/* ValueHandler.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package javax.rmi.CORBA;
|
||||
|
||||
import java.io.*;
|
||||
//import org.omg.CORBA.portable.InputStream;
|
||||
//import org.omg.CORBA.portable.OutputStream;
|
||||
//import org.omg.SendingContext.RunTime;
|
||||
|
||||
public interface ValueHandler
|
||||
{
|
||||
|
||||
String getRMIRepositoryID(Class clz);
|
||||
|
||||
// XXX Runtime -> RunTime
|
||||
Runtime getRunTimeCodeBase();
|
||||
|
||||
boolean isCustomMarshaled(Class clz);
|
||||
|
||||
// XXX Runtime -> RunTime
|
||||
Serializable readValue(InputStream in, int offset, Class clz,
|
||||
String repositoryID, Runtime sender);
|
||||
|
||||
Serializable writeReplace(Serializable value);
|
||||
|
||||
void writeValue(OutputStream out, Serializable value);
|
||||
}
|
4
libjava/javax/rmi/ORB.java
Normal file
4
libjava/javax/rmi/ORB.java
Normal file
@ -0,0 +1,4 @@
|
||||
package javax.rmi;
|
||||
|
||||
/** XXX - Stub till we have org.omg.CORBA */
|
||||
public class ORB { }
|
114
libjava/javax/rmi/PortableRemoteObject.java
Normal file
114
libjava/javax/rmi/PortableRemoteObject.java
Normal file
@ -0,0 +1,114 @@
|
||||
/* PortableRemoteObject.java --
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package javax.rmi;
|
||||
|
||||
import java.rmi.Remote;
|
||||
import java.rmi.RemoteException;
|
||||
import java.rmi.NoSuchObjectException;
|
||||
import gnu.javax.rmi.CORBA.DelegateFactory;
|
||||
import gnu.javax.rmi.CORBA.GetDelegateInstanceException;
|
||||
import javax.rmi.CORBA.PortableRemoteObjectDelegate;
|
||||
import javax.rmi.CORBA.Util;
|
||||
|
||||
public class PortableRemoteObject
|
||||
implements Remote /* why doc doesn't say should implement Remote */
|
||||
{
|
||||
|
||||
private static PortableRemoteObjectDelegate delegate;
|
||||
static
|
||||
{
|
||||
try
|
||||
{
|
||||
delegate = (PortableRemoteObjectDelegate)DelegateFactory.getInstance
|
||||
("PortableRemoteObject");
|
||||
}
|
||||
catch(GetDelegateInstanceException e)
|
||||
{
|
||||
e.printStackTrace();
|
||||
delegate = null;
|
||||
}
|
||||
}
|
||||
|
||||
protected PortableRemoteObject()
|
||||
throws RemoteException
|
||||
{
|
||||
if(delegate != null)
|
||||
exportObject((Remote)this);
|
||||
}
|
||||
|
||||
public static void connect(Remote target, Remote source)
|
||||
throws RemoteException
|
||||
{
|
||||
if(delegate != null)
|
||||
delegate.connect(target, source);
|
||||
}
|
||||
|
||||
public static void exportObject(Remote obj)
|
||||
throws RemoteException
|
||||
{
|
||||
if(delegate != null)
|
||||
delegate.exportObject(obj);
|
||||
}
|
||||
|
||||
public static Object narrow(Object narrowFrom, Class narrowTo)
|
||||
throws ClassCastException
|
||||
{
|
||||
if(delegate != null)
|
||||
return delegate.narrow(narrowFrom, narrowTo);
|
||||
else
|
||||
return null;
|
||||
}
|
||||
|
||||
public static Remote toStub(Remote obj)
|
||||
throws NoSuchObjectException
|
||||
{
|
||||
if(delegate != null)
|
||||
return delegate.toStub(obj);
|
||||
else
|
||||
return null;
|
||||
}
|
||||
|
||||
public static void unexportObject(Remote obj)
|
||||
throws NoSuchObjectException
|
||||
{
|
||||
if(delegate != null)
|
||||
delegate.unexportObject(obj);
|
||||
}
|
||||
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user