aboutsummaryrefslogtreecommitdiff
path: root/libjava/classpath/javax/rmi
diff options
context:
space:
mode:
authorAndrew Haley <aph@redhat.com>2016-09-30 16:24:48 +0000
committerAndrew Haley <aph@gcc.gnu.org>2016-09-30 16:24:48 +0000
commit07b78716af6a9d7c9fd1e94d9baf94a52c873947 (patch)
tree3f22b3241c513ad168c8353805614ae1249410f4 /libjava/classpath/javax/rmi
parenteae993948bae8b788c53772bcb9217c063716f93 (diff)
downloadgcc-07b78716af6a9d7c9fd1e94d9baf94a52c873947.zip
gcc-07b78716af6a9d7c9fd1e94d9baf94a52c873947.tar.gz
gcc-07b78716af6a9d7c9fd1e94d9baf94a52c873947.tar.bz2
Makefile.def: Remove libjava.
2016-09-30 Andrew Haley <aph@redhat.com> * Makefile.def: Remove libjava. * Makefile.tpl: Likewise. * Makefile.in: Regenerate. * configure.ac: Likewise. * configure: Likewise. * gcc/java: Remove. * libjava: Likewise. From-SVN: r240662
Diffstat (limited to 'libjava/classpath/javax/rmi')
-rw-r--r--libjava/classpath/javax/rmi/CORBA/ClassDesc.java66
-rw-r--r--libjava/classpath/javax/rmi/CORBA/PortableRemoteObjectDelegate.java137
-rw-r--r--libjava/classpath/javax/rmi/CORBA/Stub.java203
-rw-r--r--libjava/classpath/javax/rmi/CORBA/StubDelegate.java103
-rw-r--r--libjava/classpath/javax/rmi/CORBA/Tie.java125
-rw-r--r--libjava/classpath/javax/rmi/CORBA/Util.java416
-rw-r--r--libjava/classpath/javax/rmi/CORBA/UtilDelegate.java310
-rw-r--r--libjava/classpath/javax/rmi/CORBA/ValueHandler.java130
-rw-r--r--libjava/classpath/javax/rmi/CORBA/ValueHandlerMultiFormat.java94
-rw-r--r--libjava/classpath/javax/rmi/CORBA/package.html76
-rw-r--r--libjava/classpath/javax/rmi/PortableRemoteObject.java228
-rw-r--r--libjava/classpath/javax/rmi/package.html76
-rw-r--r--libjava/classpath/javax/rmi/ssl/SslRMIClientSocketFactory.java168
-rw-r--r--libjava/classpath/javax/rmi/ssl/SslRMIServerSocketFactory.java213
14 files changed, 0 insertions, 2345 deletions
diff --git a/libjava/classpath/javax/rmi/CORBA/ClassDesc.java b/libjava/classpath/javax/rmi/CORBA/ClassDesc.java
deleted file mode 100644
index 831cdbe..0000000
--- a/libjava/classpath/javax/rmi/CORBA/ClassDesc.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/* ClassDesc.java --
- Copyright (C) 2002, 2005 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., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 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;
-
-/**
- * This class is used to marshal java.lang.Class objects over IIOP.
- * When used as a parameter type, return type, or data member, the Java Class
- * is mapped to the OMG IDL type ::javax::rmi::CORBA::ClassDesc.
- *
- * @author Audrius Meskauskas (AudriusA@Bioinformatics.org)
- */
-public class ClassDesc implements Serializable
-{
- /**
- * Use serialVersionUID (V1.4) for interoperability.
- */
- private static final long serialVersionUID = -3477057297839810709L;
-
- /**
- * The class repository Id.
- */
- String repid;
-
- /**
- * Space separeted list of URL's from where the code can be downloaded.
- */
- String codebase;
-}
diff --git a/libjava/classpath/javax/rmi/CORBA/PortableRemoteObjectDelegate.java b/libjava/classpath/javax/rmi/CORBA/PortableRemoteObjectDelegate.java
deleted file mode 100644
index b8f1d06..0000000
--- a/libjava/classpath/javax/rmi/CORBA/PortableRemoteObjectDelegate.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/* PortableRemoteObjectDelegate.java -- Interface supporting PortableRemoteObject
- Copyright (C) 2002, 2004, 2005 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., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 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.NoSuchObjectException;
-import java.rmi.Remote;
-import java.rmi.RemoteException;
-
-/**
- * A delegate, implementing the functionality, provided by the
- * {@link PortableRemoteObject}.
- *
- * The default delegate can be altered by setting the system property
- * "javax.rmi.CORBA.PortableRemoteObjectClass" to the name of the alternative
- * class that must implement {@link PortableRemoteObjectDelegate}.
- *
- * @author Audrius Meskauskas (AudriusA@Bioinformatics.org)
- */
-public interface PortableRemoteObjectDelegate
-{
- /**
- * <p>
- * Makes the remote object <code>target</code> ready for remote
- * communication using the same communications runtime as for the passed
- * <code>source</code> parameter. Connection normally happens implicitly
- * when the object is sent or received as an argument on a remote method call.
- * </p>
- * <p>
- * The target object is connected to the same ORB as source by calling the
- * {@link Stub#connect} if it is a stub or by associating its tie with an ORB
- * if it is an implementation object.
- * </p>
- *
- * @param target the target object that may be either an RMI/IDL stub or an
- * exported RMI/IDL implementation object
- * @param source the source object may also be either an RMI/IDL stub or an
- * exported RMI/IDL implementation object.
- *
- * @throws RemoteException if the target is already connected to another ORB.
- */
- void connect(Remote target, Remote source)
- throws RemoteException;
-
- /**
- * Register the passed object with the ORB runtimes, making it remotely
- * accessible. When called on jre with no objects exported, creates a
- * non-daemon thread that prevents jre from terminating until all objects are
- * unexported. Also, such object cannot be collected by garbage collector.
- * This is usually impemented via {@link Util#unexportObject}
- *
- * @param obj the object to export.
- *
- * @throws RemoteException
- */
- void exportObject(Remote obj)
- throws RemoteException;
-
- /**
- * Narrows the passed object to conform to the given interface or IDL type.
- * This method may return different instance and cannot be replaced by the
- * direct cast.
- *
- * @param narrowFrom an object to narrow.
- * @param narrowTo a type to that the object must be narrowed.
- *
- * @return On success, an object of type narrowTo or null, if narrowFrom =
- * null.
- *
- * @throws ClassCastException if no narrowing is possible.
- */
- Object narrow(Object narrowFrom, Class narrowTo)
- throws ClassCastException;
-
- /**
- * Takes a server implementation object and returns a stub object that can be
- * used to access that server object (target). If the target is connected, the
- * returned stub is also connected to the same ORB. If the target is
- * unconnected, the returned stub is unconnected.
- *
- * @param obj a server side object.
- * @return a stub object that can be used to access that server object.
- *
- * @throws NoSuchObjectException if a stub cannot be located for the given
- * target.
- */
- Remote toStub(Remote obj)
- throws NoSuchObjectException;
-
- /**
- * Deregister a currently exported server object from the ORB runtimes. The
- * object to becomes available for garbage collection. This is usually
- * impemented via {@link Util#unexportObject}
- *
- * @param obj the object to unexport.
- *
- * @throws NoSuchObjectException if the passed object is not currently
- * exported.
- */
- void unexportObject(Remote obj)
- throws NoSuchObjectException;
-}
diff --git a/libjava/classpath/javax/rmi/CORBA/Stub.java b/libjava/classpath/javax/rmi/CORBA/Stub.java
deleted file mode 100644
index d9b45f7..0000000
--- a/libjava/classpath/javax/rmi/CORBA/Stub.java
+++ /dev/null
@@ -1,203 +0,0 @@
-/* Stub.java --
- Copyright (C) 2004, 2004, 2005 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., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 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 gnu.javax.rmi.CORBA.DelegateFactory;
-import gnu.javax.rmi.CORBA.StubDelegateImpl;
-
-import java.io.IOException;
-import java.io.ObjectInputStream;
-import java.io.ObjectOutputStream;
-import java.io.Serializable;
-import java.rmi.RemoteException;
-
-import javax.rmi.PortableRemoteObject;
-
-import org.omg.CORBA.ORB;
-import org.omg.CORBA_2_3.portable.ObjectImpl;
-
-/**
- * A Stub descendants provide access to the object on the client side. This base
- * class implements methods, required for remote or local invocation using CORBA
- * mechanisms. The most of the functionality is forwarded to the stub delegate.
- * This delegate can be altered by setting the system property
- * "javax.rmi.CORBA.StubClass" to the name of the alternative class that must
- * implement {@link StubDelegate}. Hence Stub contains two delegates, one for
- * Stub-related operations and another inherited from the ObjectImpl.
- *
- * @specnote GNU Classpath uses separate delegate per each Stub. The delegate
- * holds information about the ORB and other data, specific for the each Stub.
- *
- * @author Audrius Meskauskas (AudriusA@Bioinformatics.org)
- */
-public abstract class Stub
- extends ObjectImpl
- implements Serializable
-{
- /**
- * For compatability with Sun's JDK 1.4.2 rev. 5
- */
- private static final long serialVersionUID = 1087775603798577179L;
-
- /**
- * The hashcode, computed once (expensive operation).
- */
- transient int m_hash = Integer.MIN_VALUE;
-
- /**
- * The stringified reference, computed once (expensive operation).
- */
- transient String m_ior;
-
- /**
- * The ORB, where the stub is connected on the client side.
- */
- transient ORB m_orb;
-
- /**
- * The associated delegate, responsible for the major of the functionality of
- * this stub.
- */
- static StubDelegate delegate = (StubDelegate) DelegateFactory.getInstance(DelegateFactory.STUB);
-
- /**
- * Returns the same hashcode for all stubs that point to the same remote
- * object.
- */
- public int hashCode()
- {
- if (m_hash == Integer.MIN_VALUE)
- m_hash = delegate.hashCode(this);
- // This should finally result to the IOR comparison.
- return m_hash;
- }
-
- /**
- * The stubs are equal if they point to the same remote object.
- */
- public boolean equals(java.lang.Object obj)
- {
- return delegate.equals(this, obj);
- }
-
- /**
- * Get the string representation of this Stub.
- *
- * @return the CORBA IOR reference.
- */
- public String toString()
- {
- if (m_ior == null)
- m_ior = delegate.toString(this);
- return m_ior;
- }
-
- /**
- * <p>
- * Finds the suitable {@link Tie} for this Stub and connects it to the given
- * ORB. The tie is found by the name pattern. If the found tie is derived from
- * {@link org.omg.CORBA.PortableServer.Servant}, it is connected to the root
- * POA, also activating it (if not already active).
- * </p>
- * <p>
- * This method does not allow to specify, to which POA the found Tie must be
- * connected and requires to use the deprecated method {@link ORB#connect}.
- * Many useful POA features remain unaccessible. A better alternative it might
- * be to generate a {@link org.omg.CORBA.PortableServer.Servant} - derived Tie
- * (-poa key in rmic) and connect it to POA in one of the many ways, listed in
- * the description of the {@link orb.omg.PortableServer} package). The
- * obtained CORBA object can be narrowed into stub using
- * {@link PortableRemoteObject#narrow}.
- * </p>
- * <p>
- * It is frequently easier to call {@link PortableRemoteObject#connect} rather
- * than this method.
- * </p>
- *
- * @param orb the ORB where the Stub must be connected.
- *
- * @throws RemoteException if the stub is already connected to some other ORB.
- * If the stub is already connected to the ORB that was passed as parameter,
- * the method returns without action.
- *
- * @throws BAD_PARAM if the name of this stub does not match the stub name
- * pattern, "_*_Stub" or if the Tie class, "_*Impl_Tie", does not exists or an
- * instance of this class cannot be instantiated.
- */
- public void connect(ORB orb)
- throws RemoteException
- {
- if (m_orb != null && orb != null)
- {
- if (m_orb.equals(orb))
- throw new RemoteException("Stub " + this
- + " is connected to another ORB, " + orb);
- else
- return;
- }
- m_orb = orb;
- delegate.connect(this, orb);
- }
-
- /**
- * Required by serialized form of Java API doc.
- */
- private void readObject(ObjectInputStream input)
- throws IOException, ClassNotFoundException
- {
- if (delegate instanceof StubDelegateImpl)
- ((StubDelegateImpl) delegate).readObject(this, input, m_orb);
- else
- delegate.readObject(this, input);
- }
-
- /**
- * Required by serialized form of Java API doc.
- */
- private void writeObject(ObjectOutputStream output)
- throws IOException
- {
- // The m_orb in this case may be either known or not.
- if (delegate instanceof StubDelegateImpl)
- ((StubDelegateImpl) delegate).writeObject(this, output, m_orb);
- else
-
- delegate.writeObject(this, output);
- }
-}
diff --git a/libjava/classpath/javax/rmi/CORBA/StubDelegate.java b/libjava/classpath/javax/rmi/CORBA/StubDelegate.java
deleted file mode 100644
index a191eb4..0000000
--- a/libjava/classpath/javax/rmi/CORBA/StubDelegate.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/* StubDelegate.java --
- Copyright (C) 2002, 2005 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., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 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 org.omg.CORBA.ORB;
-
-import java.io.IOException;
-import java.io.ObjectInputStream;
-import java.io.ObjectOutputStream;
-
-import java.rmi.RemoteException;
-
-/**
- * A delegate, implementing the functionality, provided by the {@link Stub}.
- * The default delegate can be altered by setting the system property
- * "javax.rmi.CORBA.StubClass" to the name of the alternative class that must
- * implement StubDelegate.
- *
- * @author Audrius Meskauskas (AudriusA@Bioinformatics.org)
- */
-public interface StubDelegate
-{
- /**
- * <p>
- * Makes the stub ready for remote communication using the given ORB.
- * </p>
- * <p>
- * It is frequently easier to call {@link PortableRemoteObject#connect} rather
- * than this method.
- * </p>
- *
- * @param orb the ORB where the Stub must be connected.
- *
- * @throws RemoteException if the stub is already connected to some other ORB.
- * If the stub is already connected to the ORB that was passed as parameter,
- * the method returns without action.
- */
- void connect(Stub self, ORB orb)
- throws RemoteException;
-
- /**
- * The objects stubs are equal if they refer the same remote object.
- */
- boolean equals(Stub self, Object obj);
-
- /**
- * Get the hashcode fo this delegate.
- */
- int hashCode(Stub self);
-
- /**
- * Read this stub from the object input stream.
- */
- void readObject(Stub self, ObjectInputStream s)
- throws IOException, ClassNotFoundException;
-
- /**
- * Write this stub to the object output stream.
- */
- void writeObject(Stub self, ObjectOutputStream s)
- throws IOException;
-
- /**
- * Get the string representation of this stub.
- */
- String toString(Stub self);
-}
diff --git a/libjava/classpath/javax/rmi/CORBA/Tie.java b/libjava/classpath/javax/rmi/CORBA/Tie.java
deleted file mode 100644
index 90a8251..0000000
--- a/libjava/classpath/javax/rmi/CORBA/Tie.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/* Tie.java --
- Copyright (C) 2002, 2005 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., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 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.NoSuchObjectException;
-import java.rmi.Remote;
-import org.omg.CORBA.ORB;
-import org.omg.CORBA.portable.InvokeHandler;
-
-/**
- * <p>
- * A Tie serves as a CORBA Servant or implementation base. It is connected to
- * the ORB on a server side, providing the implementation of the required
- * functionality. ORB access this implementation using {@link InvokeHandler}
- * ._invoke(..). All such calls are finally delegated to the object, returned by
- * {@link #getTarget()}.
- * </p>
- * <p>
- * Ties are generated from implementations (name pattern *Impl) and have the
- * name pattern _*Impl_Tie, for instance:<br>
- * <code>rmic -keep -iiop -poa -always gnu.testlet.java.rmi.Remote.CalculatorImpl</code>
- * </p>
- * <p>
- * Ties should normally be derived from the
- * {@link org.omg.PortableServer.Servant}. Such ties are generated by
- * <code>rmic</code> compiler using <code>-poa</code> key. Ties can be also
- * derived from {@link org.omg.CORBA_2_3.portable.ObjectImpl}.
- * </p>
- *
- * @author Audrius Meskauskas (AudriusA@Bioinformatics.org)
- */
-public interface Tie
- extends InvokeHandler
-{
- /**
- * Get the invocation target, where all method calls should be delegated.
- *
- * @return the object, implementing methods, defined in the interface being
- * served by this Tie.
- */
- Remote getTarget();
-
- /**
- * Set the invocation target, where all method calls should be delegated.
- *
- * @param target the object, implementing methods, defined in the interface
- * being served by this Tie. The code, produced by a typical rmic compiler
- * usually requires the target to be an instance of the implementation from
- * that the Tie was generated.
- *
- * @throws ClassCastException if the passed parameter is not an instance of
- * the implementation from that the Tie was generated.
- */
- void setTarget(Remote target);
-
- /**
- * Get the ORB to that this Tie is connected.
- *
- * @see org.omg.PortableServer.Servant#_orb
- */
- ORB orb();
-
- /**
- * Connect this Tie to the given ORB.
- */
- void orb(ORB orb);
-
- /**
- * Get the object that delegates calls to this tie.
- *
- * @see org.omg.PortableServer.Servant#_this_object()
- */
- org.omg.CORBA.Object thisObject();
-
- /**
- * Deactivate this Tie. The tie is normally deactivated using POA mechanisms.
- * Depending on the POA policies, it may be possible to activate the Tie
- * again. The ties that are not derived from
- * {@link org.omg.PortableServer.Servant} deactivate themselves by
- * {@link ORB#disconnect}.
- *
- * @throws NoSuchObjectException if there are no objects served by this Tie,
- * or if the these objects are already deactivated.
- *
- * @see org.omg.PortableServer.POAOperations#deactivate_object
- */
- void deactivate()
- throws NoSuchObjectException;
-
-}
diff --git a/libjava/classpath/javax/rmi/CORBA/Util.java b/libjava/classpath/javax/rmi/CORBA/Util.java
deleted file mode 100644
index 9c6df60..0000000
--- a/libjava/classpath/javax/rmi/CORBA/Util.java
+++ /dev/null
@@ -1,416 +0,0 @@
-/* Util.java --
- Copyright (C) 2002, 2004, 2005 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., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 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 org.omg.CORBA.Any;
-import org.omg.CORBA.BAD_PARAM;
-import org.omg.CORBA.COMM_FAILURE;
-import org.omg.CORBA.CompletionStatus;
-import org.omg.CORBA.INVALID_TRANSACTION;
-import org.omg.CORBA.INV_OBJREF;
-import org.omg.CORBA.MARSHAL;
-import org.omg.CORBA.NO_PERMISSION;
-import org.omg.CORBA.OBJECT_NOT_EXIST;
-import org.omg.CORBA.OMGVMCID;
-import org.omg.CORBA.ORB;
-import org.omg.CORBA.SystemException;
-import org.omg.CORBA.TRANSACTION_REQUIRED;
-import org.omg.CORBA.TRANSACTION_ROLLEDBACK;
-import org.omg.CORBA.TypeCode;
-import org.omg.CORBA.portable.InputStream;
-import org.omg.CORBA.portable.OutputStream;
-
-import gnu.javax.rmi.CORBA.DelegateFactory;
-
-import java.rmi.AccessException;
-import java.rmi.MarshalException;
-import java.rmi.NoSuchObjectException;
-import java.rmi.Remote;
-import java.rmi.RemoteException;
-import java.rmi.ServerError;
-import java.rmi.ServerException;
-import java.rmi.UnexpectedException;
-import java.rmi.server.RMIClassLoader;
-
-import javax.transaction.InvalidTransactionException;
-import javax.transaction.TransactionRequiredException;
-import javax.transaction.TransactionRolledbackException;
-
-/**
- * Provides utility methods used by stubs and ties to perform common operations.
- * The functionality is forwarded to the enclosed UtilDelegate. This delegate
- * can be altered by setting the system property "javax.rmi.CORBA.UtilClass" to
- * the name of the alternative class that must implement {@link UtilDelegate}.
- *
- * @author Audrius Meskauskas (AudriusA@Bioinformatics.org)
- */
-public class Util
-{
- /**
- * The delegate, responsible for all functionality.
- */
- static UtilDelegate delegate = (UtilDelegate) DelegateFactory.getInstance(DelegateFactory.UTIL);
-
- /**
- * Prevents this class from being instantiated.
- */
- private Util()
- {
- }
-
- /**
- * Used by local stubs to create a copy of the object. The object must be
- * Serializable for this operation to succeed. Strings are not copied and
- * 1D-3D string arrays are only cloned.
- */
- public static java.lang.Object copyObject(java.lang.Object object, ORB orb)
- throws RemoteException
- {
- return delegate.copyObject(object, orb);
- }
-
- /**
- * Used by local stubs to create a multiple copies of the object, preserving
- * sharing accross the parameters if necessary.
- */
- public static java.lang.Object[] copyObjects(java.lang.Object[] object,
- ORB orb)
- throws RemoteException
- {
- return delegate.copyObjects(object, orb);
- }
-
- /**
- * Get the value handler that Serializes Java objects to and from CDR (GIOP)
- * streams.
- *
- * When using the default Util implementation, the class of the returned
- * handler can be altered by setting by setting the system property
- * "javax.rmi.CORBA.ValueHandlerClass" to the name of the alternative class
- * that must implement {@link ValueHandler}.
- */
- public static ValueHandler createValueHandler()
- {
- return delegate.createValueHandler();
- }
-
- /**
- * This call is finally delegated to {@link RMIClassLoader#getClassAnnotation};
- */
- public static String getCodebase(Class clz)
- {
- return delegate.getCodebase(clz);
- }
-
- /**
- * Get the Tie that handles invocations on the given target. If the target/Tie
- * pair has not been previously registered using {@link #registerTarget},
- * this method tries to locate a tie class by the name pattern. If this
- * succeeds, the tie-target pair is also registered.
- *
- * @return the Tie.
- */
- public static Tie getTie(Remote target)
- {
- return delegate.getTie(target);
- }
-
- /**
- * Checks if the given stub is local. The implementation it delegates call to
- * {@link ObjectImpl#_is_local().
- *
- * @param stub a stub to check.
- * @return true if the stub is local, false otherwise.
- *
- * @throws RemoteException if the {@link ObjectImpl#_is_local()} throws a
- * {@link org.omg.CORBA.SystemException}.
- */
- public static boolean isLocal(Stub stub)
- throws RemoteException
- {
- return delegate.isLocal(stub);
- }
-
- /**
- * Load the class. The method uses class loaders from the call stact first. If
- * this fails, the further behaviour depends on the System Property
- * "java.rmi.server.useCodebaseOnly" with default value "false".
- *
- * <ul>
- * <li>If remoteCodebase is non-null and useCodebaseOnly is "false" then call
- * java.rmi.server.RMIClassLoader.loadClass (remoteCodebase, className)</li>
- * <li> If remoteCodebase is null or useCodebaseOnly is true then call
- * java.rmi.server.RMIClassLoader.loadClass(className)</li>
- * <li>If a class is still not successfully loaded and the loader != null
- * then try Class.forName(className, false, loader). </li>
- * </ul>
- *
- * @param className the name of the class.
- * @param remoteCodebase the codebase.
- * @param loader the class loader.
- * @return the loaded class.
- *
- * @throws ClassNotFoundException of the class cannot be loaded.
- */
- public static Class loadClass(String className, String remoteCodebase,
- ClassLoader loader)
- throws ClassNotFoundException
- {
- return delegate.loadClass(className, remoteCodebase, loader);
- }
-
- /**
- * Converts CORBA {@link SystemException} into RMI {@link RemoteException}.
- * The exception is converted as defined in the following table:
- * <p>
- * <table border = "1">
- * <tr>
- * <th>CORBA Exception</th>
- * <th>RMI Exception</th>
- * </tr>
- * <tr>
- * <td>{@link COMM_FAILURE}</td>
- * <td>{@link MarshalException}</td>
- * </tr>
- * <tr>
- * <td>{@link INV_OBJREF}</td>
- * <td>{@link NoSuchObjectException}</td>
- * </tr>
- * <tr>
- * <td>{@link NO_PERMISSION}</td>
- * <td>{@link AccessException}</td>
- * </tr>
- * <tr>
- * <td>{@link MARSHAL}</td>
- * <td>{@link MarshalException}</td>
- * </tr>
- * <tr>
- * <td>{@link BAD_PARAM} (all other cases)</td>
- * <td>{@link MarshalException}</td>
- * </tr>
- * <tr>
- * <td>{@link OBJECT_NOT_EXIST}</td>
- * <td>{@link NoSuchObjectException}</td>
- * </tr>
- * <tr>
- * <td>{@link TRANSACTION_REQUIRED}</td>
- * <td>{@link TransactionRequiredException}</td>
- * </tr>
- * <tr>
- * <td>{@link TRANSACTION_ROLLEDBACK}</td>
- * <td>{@link TransactionRolledbackException}</td>
- * </tr>
- * <tr>
- * <td>{@link INVALID_TRANSACTION}</td>
- * <td>{@link InvalidTransactionException}</td>
- * </tr>
- * <tr>
- * <td bgcolor="lightgray">Any other {@link SystemException}</td>
- * <td bgcolor="lightgray">{@link RemoteException}</td>
- * </tr>
- * </table>
- * </p>
- * <p>
- * The exception detailed message always consists of
- * <ol>
- * <li>the string "CORBA "</li>
- * <li>the CORBA name of the system exception</li>
- * <li>single space</li>
- * <li>the hexadecimal value of the system exception's minor code, preceeded
- * by 0x (higher bits contain {@link OMGVMCID}).</li>
- * <li>single space</li>
- * <li>the {@link CompletionStatus} of the exception: "Yes", "No" or "Maybe".</li>
- * </ol>
- * The subsequent content is not part of the official RMI-IIOP standart and is
- * added for compatibility with Sun's implementation:
- * <ol>
- * <li>the phrase "<code>; nested exception is: <i>(line feed)(tab)</i></code>"</li>
- * <li>the full name of the mapped SystemException, as returned by
- * Class.getName().</li>
- * <li>the ": ".
- * <li>the value, returned by .getMessage() of the passed parameter.</li>
- * </ol>
- * <p>
- * For instance, if the Internet connection was refused:
- * </p><p>
- * <code>CORBA COMM_FAILURE 0x535500C9 No</code>
- * </p><p>
- * The original CORBA exception is set as the cause of the RemoteException
- * being created.
- * </p>
- */
- public static RemoteException mapSystemException(SystemException ex)
- {
- return delegate.mapSystemException(ex);
- }
-
- /**
- * Register the Tie-target pair. As the Tie is a Servant, it can potentially
- * be connected to several objects and hence may be registered with several
- * targets.
- */
- public static void registerTarget(Tie tie, Remote target)
- {
- delegate.registerTarget(tie, target);
- }
-
- /**
- * Deactivate the associated Tie, if it is found and is not connected to other
- * registered targets. Independing from the POA policies, the transparent
- * reactivation will not be possible.
- */
- public static void unexportObject(Remote target)
- throws NoSuchObjectException
- {
- delegate.unexportObject(target);
- }
-
- /**
- * Converts the exception that was thrown by the implementation method on a
- * server side into RemoteException that can be transferred and re-thrown on a
- * client side. The method converts exceptions as defined in the following
- * table: <table border = "1">
- * <tr>
- * <th>Exception to map (or subclass)</th>
- * <th>Maps into</th>
- * </tr>
- * <tr>
- * <td>{@link Error}</td>
- * <td>{@link ServerError}</td>
- * </tr>
- * <tr>
- * <td>{@link RemoteException}</td>
- * <td>{@link ServerException}</td>
- * </tr>
- * <tr>
- * <td>{@link SystemException}</td>
- * <td>wrapException({@link #mapSystemException})</td>
- * </tr>
- * <tr>
- * <td>{@link RuntimeException}</td>
- * <td><b>rethrows</b></td>
- * </tr>
- * <tr>
- * <td>Any other exception</td>
- * <td>{@link UnexpectedException}</td>
- * </tr>
- * </table>
- *
- * @param exception an exception that was thrown on a server side implementation.
- *
- * @return the corresponding RemoteException unless it is a RuntimeException.
- *
- * @throws RuntimeException the passed exception if it is an instance of
- * RuntimeException.
- *
- * @specnote It is the same behavior, as in Suns implementations 1.4.0-1.5.0.
- */
- public static RemoteException wrapException(Throwable exception)
- {
- return delegate.wrapException(exception);
- }
-
- /**
- * Write abstract interface to the CORBA output stream. The write format is
- * matching CORBA abstract interface. Remotes and CORBA objects are written as
- * objects, other classes are supposed to be value types and are written as
- * such. {@link Remote}s are processed as defined in
- * {@link #writeRemoteObject}. The written data contains discriminator,
- * defining, that was written. Another method that writes the same content is
- * {@link org.omg.CORBA_2_3.portable.OutputStream#write_abstract_interface(java.lang.Object)}.
- *
- * @param output a stream to write to, must be
- * {@link org.omg.CORBA_2_3.portable.OutputStream}.
- *
- * @param object an object to write, must be CORBA object, Remote
- */
- public static void writeAbstractObject(OutputStream output,
- java.lang.Object object)
- {
- delegate.writeAbstractObject(output, object);
- }
-
- /**
- * Write the passed java object to the output stream in the form of the CORBA
- * {@link Any}. This includes creating an writing the object {@link TypeCode}
- * first. Such Any can be later read by a non-RMI-IIOP CORBA implementation
- * and manipulated, for instance, by means, provided in
- * {@link org.omg.DynamicAny.DynAny}. Depending from the passed value, this
- * method writes CORBA object, value type or value box. For value types Null
- * is written with the abstract interface, its typecode having repository id
- * "IDL:omg.org/CORBA/AbstractBase:1.0" and the empty string name.
- *
- * @param output the object to write.
- * @param object the java object that must be written in the form of the CORBA
- * {@link Any}.
- */
- public static void writeAny(OutputStream output, java.lang.Object object)
- {
- delegate.writeAny(output, object);
- }
-
- /**
- * Read Any from the input stream.
- */
- public static java.lang.Object readAny(InputStream input)
- {
- return delegate.readAny(input);
- }
-
- /**
- * Write the passed parameter to the output stream as CORBA object. If the
- * parameter is an instance of Remote and not an instance of Stub, the method
- * instantiates a suitable Tie, connects the parameter to this Tie and then
- * connects that Tie to the ORB that is requested from the output stream. Then
- * the object reference is written to the stream, making remote invocations
- * possible (the ORB is started and activated, if required). This method is
- * used in write_value(..) method group in
- * {@link org.omg.CORBA_2_3.portable.OutputStream} and also may be called
- * directly from generated Stubs and Ties.
- *
- * @param output a stream to write to, must be
- * org.omg.CORBA_2_3.portable.OutputStream
- * @param object an object to write.
- */
- public static void writeRemoteObject(OutputStream output,
- java.lang.Object object)
- {
- delegate.writeRemoteObject(output, object);
- }
-}
diff --git a/libjava/classpath/javax/rmi/CORBA/UtilDelegate.java b/libjava/classpath/javax/rmi/CORBA/UtilDelegate.java
deleted file mode 100644
index 2454f53..0000000
--- a/libjava/classpath/javax/rmi/CORBA/UtilDelegate.java
+++ /dev/null
@@ -1,310 +0,0 @@
-/* UtilDelegate.java --
- Copyright (C) 2002, 2005 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., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 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 org.omg.CORBA.Any;
-import org.omg.CORBA.BAD_PARAM;
-import org.omg.CORBA.COMM_FAILURE;
-import org.omg.CORBA.CompletionStatus;
-import org.omg.CORBA.INVALID_TRANSACTION;
-import org.omg.CORBA.INV_OBJREF;
-import org.omg.CORBA.MARSHAL;
-import org.omg.CORBA.NO_PERMISSION;
-import org.omg.CORBA.OBJECT_NOT_EXIST;
-import org.omg.CORBA.OMGVMCID;
-import org.omg.CORBA.ORB;
-import org.omg.CORBA.SystemException;
-import org.omg.CORBA.TRANSACTION_REQUIRED;
-import org.omg.CORBA.TRANSACTION_ROLLEDBACK;
-import org.omg.CORBA.TypeCode;
-import org.omg.CORBA.portable.InputStream;
-import org.omg.CORBA.portable.OutputStream;
-
-import java.rmi.AccessException;
-import java.rmi.MarshalException;
-import java.rmi.NoSuchObjectException;
-import java.rmi.Remote;
-import java.rmi.RemoteException;
-import java.rmi.ServerError;
-import java.rmi.ServerException;
-import java.rmi.UnexpectedException;
-
-import javax.transaction.InvalidTransactionException;
-import javax.transaction.TransactionRequiredException;
-import javax.transaction.TransactionRolledbackException;
-
-/**
- * A delegate, implementing the functionality, provided by the {@link Util}.
- *
- * The default delegate can be altered by setting the system property
- * "javax.rmi.CORBA.UtilClass" to the name of the alternative class that must
- * implement this interface.
- *
- * @author Audrius Meskauskas (AudriusA@Bioinformatics.org)
- */
-public interface UtilDelegate
-{
- /**
- * Used by local stubs to create a copy of the object.
- */
- Object copyObject(Object obj, ORB orb)
- throws RemoteException;
-
- /**
- * Used by local stubs to create a multiple copies of the object, preserving
- * sharing accross the parameters if necessary.
- */
- Object[] copyObjects(Object[] obj, ORB orb)
- throws RemoteException;
-
- /**
- * Get the value handler that Serializes Java objects to and from CDR (GIOP)
- * streams.
- */
- ValueHandler createValueHandler();
-
- String getCodebase(Class clz);
-
- /**
- * Checks if the given stub is local.
- */
- boolean isLocal(Stub stub)
- throws RemoteException;
-
- Class loadClass(String className, String remoteCodebase, ClassLoader loader)
- throws ClassNotFoundException;
-
- /**
- * Converts CORBA {@link SystemException} into RMI {@link RemoteException}.
- * The exception is converted as defined in the following table:
- * <p>
- * <table border = "1">
- * <tr>
- * <th>CORBA Exception</th>
- * <th>RMI Exception</th>
- * </tr>
- * <tr>
- * <td>{@link COMM_FAILURE}</td>
- * <td>{@link MarshalException}</td>
- * </tr>
- * <tr>
- * <td>{@link INV_OBJREF}</td>
- * <td>{@link NoSuchObjectException}</td>
- * </tr>
- * <tr>
- * <td>{@link NO_PERMISSION}</td>
- * <td>{@link AccessException}</td>
- * </tr>
- * <tr>
- * <td>{@link MARSHAL}</td>
- * <td>{@link MarshalException}</td>
- * </tr>
- * <tr>
- * <td>{@link BAD_PARAM} (all other cases)</td>
- * <td>{@link MarshalException}</td>
- * </tr>
- * <tr>
- * <td>{@link OBJECT_NOT_EXIST}</td>
- * <td>{@link NoSuchObjectException}</td>
- * </tr>
- * <tr>
- * <td>{@link TRANSACTION_REQUIRED}</td>
- * <td>{@link TransactionRequiredException}</td>
- * </tr>
- * <tr>
- * <td>{@link TRANSACTION_ROLLEDBACK}</td>
- * <td>{@link TransactionRolledbackException}</td>
- * </tr>
- * <tr>
- * <td>{@link INVALID_TRANSACTION}</td>
- * <td>{@link InvalidTransactionException}</td>
- * </tr>
- * <tr>
- * <td bgcolor="lightgray">Any other {@link SystemException}</td>
- * <td bgcolor="lightgray">{@link RemoteException}</td>
- * </tr>
- * </table>
- * </p>
- * <p>
- * The exception detailed message always consists of
- * <ol>
- * <li>the string "CORBA "</li>
- * <li>the CORBA name of the system exception</li>
- * <li>single space</li>
- * <li>the hexadecimal value of the system exception's minor code, preceeded
- * by 0x (higher bits contain {@link OMGVMCID}).</li>
- * <li>single space</li>
- * <li>the {@link CompletionStatus} of the exception: "Yes", "No" or "Maybe".</li>
- * </ol>
- * The subsequent content is not part of the official RMI-IIOP standart and is
- * added for compatibility with Sun's implementation:
- * <ol>
- * <li>the phrase "<code>; nested exception is: <i>(line feed)(tab)</i></code>"</li>
- * <li>the full name of the mapped SystemException, as returned by
- * Class.getName().</li>
- * <li>the ": ".
- * <li>the value, returned by .getMessage() of the passed parameter.</li>
- * </ol>
- * <p>
- * For instance, if the Internet connection was refused:
- * </p><p>
- * <code>CORBA COMM_FAILURE 0x535500C9 No</code>
- * </p><p>
- * The original CORBA exception is set as the cause of the RemoteException
- * being created.
- * </p>
- */
- RemoteException mapSystemException(SystemException ex);
-
- /**
- * Get the Tie that handles invocations on the given target. The target/Tie
- * pair must be previously registered using {@link #registerTarget}.
- *
- * @return the Tie, or null if no such is known.
- */
- Tie getTie(Remote target);
-
- /**
- * Register the Tie-target pair.
- */
- void registerTarget(Tie tie, Remote target);
-
- /**
- * Deactivate the associated Tie, if it is found and is not connected to other
- * registered targets.
- */
- void unexportObject(Remote target)
- throws NoSuchObjectException;
-
- /**
- * Converts the exception that was thrown by the implementation method on a
- * server side into RemoteException that can be transferred and re-thrown on a
- * client side. The method converts exceptions as defined in the following
- * table: <table border = "1">
- * <tr>
- * <th>Exception to map (or subclass)</th>
- * <th>Maps into</th>
- * </tr>
- * <tr>
- * <td>{@link Error}</td>
- * <td>{@link ServerError}</td>
- * </tr>
- * <tr>
- * <td>{@link RemoteException}</td>
- * <td>{@link ServerException}</td>
- * </tr>
- * <tr>
- * <td>{@link SystemException}</td>
- * <td>wrapException({@link #mapSystemException})</td>
- * </tr>
- * <tr>
- * <td>{@link RuntimeException}</td>
- * <td><b>rethrows</b></td>
- * </tr>
- * <tr>
- * <td>Any other exception</td>
- * <td>{@link UnexpectedException}</td>
- * </tr>
- * </table>
- *
- * @param e an exception that was thrown on a server side implementation.
- *
- * @return the corresponding RemoteException unless it is a RuntimeException.
- *
- * @throws RuntimeException the passed exception if it is an instance of
- * RuntimeException.
- *
- * @specnote It is the same behavior, as in Suns implementations 1.4.0-1.5.0.
- */
- RemoteException wrapException(Throwable orig);
-
- /**
- * Write the passed parameter to the output stream as CORBA object. If the
- * parameter is an instance of Remote and not an instance of Stub, the method
- * instantiates a suitable Tie, connects the parameter to this Tie and then
- * connects that Tie to the ORB that is requested from the output stream. Then
- * the object reference is written to the stream, making remote invocations
- * possible. This method is used in write_value(..) method group in
- * {@link org.omg.CORBA_2_3.portable.OutputStream} and also may be called
- * directly from generated Stubs and Ties.
- *
- * @param output a stream to write to, must be
- * org.omg.CORBA_2_3.portable.OutputStream
- * @param obj an object to write.
- */
- void writeRemoteObject(OutputStream output, Object obj);
-
- /**
- * Write abstract interface to the CORBA output stream. The write format is
- * matching CORBA abstract interface. Remotes and CORBA objects are written as
- * objects, other classes are supposed to be value types and are written as
- * such. {@link Remote}s are processed as defined in
- * {@link #writeRemoteObject}. The written data contains discriminator,
- * defining, that was written. Another method that writes the same content is
- * {@link org.omg.CORBA_2_3.portable.OutputStream#write_abstract_interface(java.lang.Object)}.
- *
- * @param output a stream to write to, must be
- * {@link org.omg.CORBA_2_3.portable.OutputStream}.
- *
- * @param object an object to write, must be CORBA object, Remote
- */
- void writeAbstractObject(OutputStream output, Object object);
-
- /**
- * Write the passed java object to the output stream in the form of the CORBA
- * {@link Any}. This includes creating an writing the object {@link TypeCode}
- * first. Such Any can be later read by a non-RMI-IIOP CORBA implementation
- * and manipulated, for instance, by means, provided in
- * {@link org.omg.DynamicAny.DynAny}. Depending from the passed value, this
- * method writes CORBA object, value type or value box. For value types Null
- * is written with the abstract interface, its typecode having repository id
- * "IDL:omg.org/CORBA/AbstractBase:1.0" and the empty string name.
- *
- * @param output the object to write.
- * @param object the java object that must be written in the form of the CORBA
- * {@link Any}.
- */
- void writeAny(OutputStream output, Object object);
-
- /**
- * Read Any from the input stream.
- */
- Object readAny(InputStream input);
-
-}
diff --git a/libjava/classpath/javax/rmi/CORBA/ValueHandler.java b/libjava/classpath/javax/rmi/CORBA/ValueHandler.java
deleted file mode 100644
index cc855b8..0000000
--- a/libjava/classpath/javax/rmi/CORBA/ValueHandler.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/* ValueHandler.java --
- Copyright (C) 2002, 2004, 2005 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., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 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;
-
-import org.omg.CORBA.CustomMarshal;
-import org.omg.CORBA.portable.InputStream;
-import org.omg.CORBA.portable.OutputStream;
-import org.omg.CORBA.portable.Streamable;
-import org.omg.SendingContext.RunTime;
-
-/**
- * Serializes Java objects to and from CDR (GIOP) streams. The working instance
- * of the value handler is returned by {@link Util#createValueHandler} and can
- * be altered by setting the system property "javax.rmi.CORBA.ValueHandlerClass"
- * to the name of the alternative class that must implement ValueHandler.
- *
- * @author Audrius Meskauskas (AudriusA@Bioinformatics.org)
- */
-public interface ValueHandler
-{
- /**
- * Get CORBA repository Id for the given java class.
- *
- * The syntax of the repository ID is the initial ?RMI:?, followed by the Java
- * class name, followed by name, followed by a hash code string, followed
- * optionally by a serialization version UID string.
- *
- * For Java identifiers that contain illegal OMG IDL identifier characters
- * such as ?$?, any such illegal characters are replaced by ?\U? followed by
- * the 4 hexadecimal characters (in upper case) representing the Unicode
- * value.
- *
- * @param clz a class for that the repository Id is required.
- *
- * @return the class repository id.
- */
- String getRMIRepositoryID(Class clz);
-
- /**
- * Returns the CodeBase for this ValueHandler.
- *
- * @return the codebase.
- */
- RunTime getRunTimeCodeBase();
-
- /**
- * Indicates that the given class is responsible itself for writing its
- * content to the stream. Such classes implement either {@link Streamable}
- * (default marshalling, generated by IDL-to-java compiler) or
- * {@link CustomMarshal} (the user-programmed marshalling).
- *
- * @param clz the class being checked.
- * @return true if the class supports custom or default marshalling, false
- * otherwise.
- */
- boolean isCustomMarshaled(Class clz);
-
- /**
- * Read value from the CORBA input stream in the case when the value is not
- * Streamable or CustomMarshall'ed. The fields of the class being written will
- * be accessed using reflection.
- *
- * @param in a CORBA stream to read.
- * @param offset the current position in the input stream.
- * @param clz the type of value being read.
- * @param repositoryID the repository Id of the value being read.
- * @param sender the sending context that should provide data about the
- * message originator.
- *
- * @return the object, extracted from the stream.
- */
- Serializable readValue(InputStream in, int offset, Class clz,
- String repositoryID, RunTime sender);
-
- /**
- * When the value provides the writeReplace method, the result of this method
- * is written. Otherwise, the value itself is written.
- *
- * @param value the value that should be written to the stream.
- *
- * @return the value that will be actually written to the stream.
- */
- Serializable writeReplace(Serializable value);
-
- /**
- * Write value to CORBA output stream using java senmatics.
- *
- * @param out a stream to write into.
- * @param value a java object to write.
- */
- void writeValue(OutputStream out, Serializable value);
-}
diff --git a/libjava/classpath/javax/rmi/CORBA/ValueHandlerMultiFormat.java b/libjava/classpath/javax/rmi/CORBA/ValueHandlerMultiFormat.java
deleted file mode 100644
index 6bc6ad0..0000000
--- a/libjava/classpath/javax/rmi/CORBA/ValueHandlerMultiFormat.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/* ValueHandlerMultiFormat.java --
- Copyright (C) 2005 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., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 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 org.omg.CORBA.portable.OutputStream;
-
-import java.io.Serializable;
-
-/**
- * This interface extends the previous ValueHandler, supporting various stream
- * format versions. The {@link ValueHandler} can be casted into this interface
- * to access additional features.
- *
- * @since 1.5
- *
- * @author Audrius Meskauskas, Lithuania (AudriusA@Bioinformatics.org)
- */
-public interface ValueHandlerMultiFormat
- extends ValueHandler
-{
- /**
- * Get the maximal supported version for the value types, supported by
- * this value handler. The versions are integer numbers, the currently valid
- * values being 1 and 2.
- *
- * These two versions differ in how the additional data, stored by the
- * writeObject method, are encoded.
- * <ul>
- * <li> For version 1 (GNU Classpath default), that data (if present) are
- * written "as is". </li>
- * <li>For version 2, this data fragment is enclosed within a CDR custom
- * valuetype with no codebase and repository Id "RMI:org.omg.custom.<class>"
- * where <class> is the fully-qualified name of the class whose writeObject
- * method is being invoked. If the object does not write any data via
- * writeObject method, the null valuetype (0x0) must be written.</li>
- * </ul>
- * As the version number is part of the value type record, there is no need
- * to the format control during the reading.
- *
- * @return the maximal supported version.
- */
- byte getMaximumStreamFormatVersion();
-
- /**
- * Write the value type to the output stream using the given format version.
- * The older method {@link ValueHandler#writeValue} always uses the version 1.
- *
- * @param output the stream, where the value should be written, must implement
- * {@link ValueOutputStream}.
- * @param value the value that should be written.
- * @param version the version of the format that must be used to write the
- * value.
- *
- * @throws BAD_PARAM if the version number is less than 1 or greater than the
- * maximal supported version.
- */
- void writeValue(OutputStream output, Serializable value, byte version);
-}
diff --git a/libjava/classpath/javax/rmi/CORBA/package.html b/libjava/classpath/javax/rmi/CORBA/package.html
deleted file mode 100644
index 6014c8c..0000000
--- a/libjava/classpath/javax/rmi/CORBA/package.html
+++ /dev/null
@@ -1,76 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<!-- package.html - describes classes in javax.rmi package.
- Copyright (C) 2004 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., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 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. -->
-
-<html>
-<head><title>GNU Classpath - javax.rmi.CORBA</title></head>
-
-<body>
-<p>
-Java RMI over IIOP combines RMI technology with CORBA technology. Like plain RMI,
-RMI over IIOP allows to work completely in the Java programming language
-(no IDL). When CORBA needs a separate helper class for each structure being
-passed, RMI over IIOP only needs stubs and ties for the objects that are remotely
-accessible. As a result, development with RMI-IIOP is easier. However the
-specialised pure CORBA helpers needs no reflection to transfer they structures
-and hence may be faster than methods, used by both RMI-IIOP and plain RMI.
-</p><p>
-Like RMI, RMI over IIOP provides flexibility by allowing to pass any serializable
-Java object (Objects By Value) between application components. A certain
-"imaginary IDL" is automatically supposed; this IDL can be explicitly generated
-and later used to interoperate with non-java application.
-</p><p>
-Like CORBA, RMI over IIOP is based on open standards defined with the
-participation of hundredsof vendors and users in the OMG. It uses IIOP
-communication protocol that provides much better interoperability with other
-programming languages.
-</p><p>
-With RMI/IIOP you can use advanced CORBA features: multiple objects per servant
-and servants per object, servant activators and locators, servant, client and
-ior interceptors, CORBA naming service, various ORB policies, stringified object
-references and so on. This functionality is based on CORBA value type standard.
-RMI/IIOP supports (and GNU Classpath implements) transferring of the arbitrary
-connected object graphs (graph flattenning).
-</p><p>
-GNU Classpath RMI-IIOP functionality is implemented as described in
-OMG formal/03-09-04 (IDL to Java mapping v1.3). Value types are written as
-described in formal/04-03-12 (CORBA 3.0.3).
-</p>
-@author Wu Gansha (gansha.wu@intel.com), headers.
-@author Audrius Meskauskas (AudriusA@Bioinformatics.org), implementation.
-</body>
-</html>
diff --git a/libjava/classpath/javax/rmi/PortableRemoteObject.java b/libjava/classpath/javax/rmi/PortableRemoteObject.java
deleted file mode 100644
index aa7e530..0000000
--- a/libjava/classpath/javax/rmi/PortableRemoteObject.java
+++ /dev/null
@@ -1,228 +0,0 @@
-/* PortableRemoteObject.java --
- Copyright (C) 2004, 2004, 2005 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., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 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 gnu.javax.rmi.CORBA.DelegateFactory;
-
-import org.omg.CORBA.BAD_PARAM;
-import org.omg.CORBA.ORB;
-import org.omg.CORBA.portable.ObjectImpl;
-import org.omg.PortableServer.POA;
-import org.omg.PortableServer.Servant;
-
-import java.rmi.NoSuchObjectException;
-import java.rmi.Remote;
-import java.rmi.RemoteException;
-
-import javax.rmi.CORBA.PortableRemoteObjectDelegate;
-import javax.rmi.CORBA.Stub;
-import javax.rmi.CORBA.Tie;
-import javax.rmi.CORBA.Util;
-
-/**
- * <p>
- * An utility class for RMI/IDL server side object implementations. Server side
- * implementation objects may inherit from this class, but this is not
- * mandatory, as the needed methds are static. Server side implementations may
- * choose to inherit from {@link ObjectImpl} or {@link Servant} instead.
- * </p>
- * <p>
- * The functionality of methods in this class is forwarded to the enclosed
- * PortableRemoteObjectDelegate. This delegate can be altered by setting the
- * system property "javax.rmi.CORBA.PortableRemoteObjectClass" to the name of
- * the alternative class that must implement
- * {@link PortableRemoteObjectDelegate}.
- * </p>
- *
- * @author Audrius Meskauskas (AudriusA@Bioinformatics.org)
- */
-public class PortableRemoteObject
-{
- /**
- * A delegate where the functionality is forwarded.
- */
- static PortableRemoteObjectDelegate delegate = (PortableRemoteObjectDelegate) DelegateFactory.getInstance(DelegateFactory.PORTABLE_REMOTE_OBJECT);
-
- /**
- * The protected constructor calls {@link exportObject} (this).
- *
- * @throws RemoteException if the exportObject(this) throws one.
- */
- protected PortableRemoteObject()
- throws RemoteException
- {
- exportObject((Remote) this);
- }
-
- /**
- * <p>
- * Makes the remote object <code>a_target</code> ready for remote
- * communication using the same communications runtime as for the passed
- * <code>a_source</code> parameter. The a_target is connected to the same
- * ORB (and, if applicable, to the same {@link POA}) as the a_source.
- *
- * @param target the target to connect to ORB, must be an instance of either
- * {@link ObjectImpl} (Stubs and old-style ties) or {@link Tie}.
- *
- * @param source the object, providing the connection information, must be
- * an instance of either {@link ObjectImpl} (Stubs and old-style ties) or
- * {@link Servant} (the next-generation Ties supporting {@link POA}).
- *
- * @throws RemoteException if the target is already connected to another ORB.
- */
- public static void connect(Remote target, Remote source)
- throws RemoteException
- {
- delegate.connect(target, source);
- }
-
- /**
- * <p>
- * Makes a server object ready for remote calls. The subclasses of
- * PortableRemoteObject do not need to call this method, as it is called by
- * the constructor.
- * </p>
- * <p>
- * This method only creates a tie object and caches it for future usage. The
- * created tie does not have a delegate or an ORB associated.
- * </p>
- *
- * @param object the object to export.
- *
- * @throws RemoteException if export fails due any reason.
- */
- public static void exportObject(Remote object)
- throws RemoteException
- {
- delegate.exportObject(object);
- }
-
- /**
- * Narrows the passed object to conform to the given interface or IDL type. In
- * RMI-IIOP, this method replaces the narrow(org.omg.CORBA.Object) method that
- * was present in the CORBA Helpers. This method frequently returns different
- * instance and cannot be replaced by the direct cast. The typical narrowing
- * cases (all supported by GNU Classpath) are:
- * <ul>
- * <li>A CORBA object (for instance, returned by the
- * {@link ORB#string_to_object} or from the naming service) can be narrowed
- * into interface, derived from Remote. The method will try to locate an
- * appropriate {@link Stub} by the name pattern (_*_Stub). If the object being
- * narrowed is connected to an ORB, the returned instance will inherit that
- * connection, representing the same remote (or local) object, but now with
- * the possibility to invoke remote methods. </li>
- * <li>A CORBA object may be directly narrowed into the appropriate
- * {@link Stub} class, if it is and passed as a second parameter. This allows
- * to use non-standard stubs without parameterless constructors.</li>
- * <li>Any two classes, derived from the {@link ObjectImpl} (may be Stub's)
- * can be narrowed one into another (a delegate is transferred). </li>
- * <li>An implementation of Remote can be narrowed into {@link Tie} that can
- * later connected to an ORB, making the methods accessible remotely. The
- * Remote being narrowed normally provides a local implementation, but you can
- * also narrow remote Stub, creating "forwarding Tie".</li>
- * <li>null is narrowed into null regardless of the second parameter.</li>
- * <li>A {@link Tie} can be narrowed into Remote, representing the
- * implementation for this Tie (if one is set).</li>
- * </ul>
- *
- * @param object the object like CORBA Object, Stub or Remote that must be
- * narrowed to the given interface.
- *
- * @param narrowToInstaceOf the class of the interface to that the object must
- * be narrowed.
- *
- * @return On success, an object of type narrowTo or null, if narrowFrom =
- * null.
- *
- * @throws ClassCastException if no narrowing is possible.
- */
- public static Object narrow(Object object, Class narrowToInstaceOf)
- throws ClassCastException
- {
- return delegate.narrow(object, narrowToInstaceOf);
- }
-
- /**
- * <p>
- * Takes a server implementation object (name pattern *imp) and returns a stub
- * object that can be used to access that server object (target), name
- * (pattern _*_Stub).
- *
- * The returned stub is not connected to any ORB and must be explicitly
- * connected using {@link #connect}.
- * </p>
- * <p>
- * The method signature prevents it from returning stubs that does not
- * implement Remote (ClassCastException will be thrown).
- * </p>
- *
- * @param target a server side object implementation.
- * @return a stub object that can be used to access that server object.
- *
- * @throws NoSuchObjectException if a stub class cannot be located by supposed
- * name pattern, or an instance of stub fails to be instantiated.
- *
- * @throws ClassCastException if the stub class can be located, but it does
- * not inherit from Remote.
- *
- * @throws BAD_PARAM if the name of the passed class does not match the
- * implementation name pattern (does not end by 'Impl').
- */
- public static Remote toStub(Remote targetImpl)
- throws NoSuchObjectException
- {
- return delegate.toStub(targetImpl);
- }
-
- /**
- * Deregister a currently exported server object from the ORB runtimes. The
- * object to becomes available for garbage collection. This is usually
- * impemented via {@link Util#unexportObject}
- *
- * @param object the object to unexport.
- *
- * @throws NoSuchObjectException if the passed object is not currently
- * exported.
- */
- public static void unexportObject(Remote object)
- throws NoSuchObjectException
- {
- delegate.unexportObject(object);
- }
-}
diff --git a/libjava/classpath/javax/rmi/package.html b/libjava/classpath/javax/rmi/package.html
deleted file mode 100644
index 6014c8c..0000000
--- a/libjava/classpath/javax/rmi/package.html
+++ /dev/null
@@ -1,76 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<!-- package.html - describes classes in javax.rmi package.
- Copyright (C) 2004 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., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 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. -->
-
-<html>
-<head><title>GNU Classpath - javax.rmi.CORBA</title></head>
-
-<body>
-<p>
-Java RMI over IIOP combines RMI technology with CORBA technology. Like plain RMI,
-RMI over IIOP allows to work completely in the Java programming language
-(no IDL). When CORBA needs a separate helper class for each structure being
-passed, RMI over IIOP only needs stubs and ties for the objects that are remotely
-accessible. As a result, development with RMI-IIOP is easier. However the
-specialised pure CORBA helpers needs no reflection to transfer they structures
-and hence may be faster than methods, used by both RMI-IIOP and plain RMI.
-</p><p>
-Like RMI, RMI over IIOP provides flexibility by allowing to pass any serializable
-Java object (Objects By Value) between application components. A certain
-"imaginary IDL" is automatically supposed; this IDL can be explicitly generated
-and later used to interoperate with non-java application.
-</p><p>
-Like CORBA, RMI over IIOP is based on open standards defined with the
-participation of hundredsof vendors and users in the OMG. It uses IIOP
-communication protocol that provides much better interoperability with other
-programming languages.
-</p><p>
-With RMI/IIOP you can use advanced CORBA features: multiple objects per servant
-and servants per object, servant activators and locators, servant, client and
-ior interceptors, CORBA naming service, various ORB policies, stringified object
-references and so on. This functionality is based on CORBA value type standard.
-RMI/IIOP supports (and GNU Classpath implements) transferring of the arbitrary
-connected object graphs (graph flattenning).
-</p><p>
-GNU Classpath RMI-IIOP functionality is implemented as described in
-OMG formal/03-09-04 (IDL to Java mapping v1.3). Value types are written as
-described in formal/04-03-12 (CORBA 3.0.3).
-</p>
-@author Wu Gansha (gansha.wu@intel.com), headers.
-@author Audrius Meskauskas (AudriusA@Bioinformatics.org), implementation.
-</body>
-</html>
diff --git a/libjava/classpath/javax/rmi/ssl/SslRMIClientSocketFactory.java b/libjava/classpath/javax/rmi/ssl/SslRMIClientSocketFactory.java
deleted file mode 100644
index 1222645..0000000
--- a/libjava/classpath/javax/rmi/ssl/SslRMIClientSocketFactory.java
+++ /dev/null
@@ -1,168 +0,0 @@
-/* SslRMIClientSocketFactory.java --
- Copyright (C) 2006 Free Software Foundation
-
-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., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 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.ssl;
-
-import java.io.IOException;
-import java.io.Serializable;
-
-import java.util.StringTokenizer;
-import javax.net.ssl.SSLSocketFactory;
-import javax.net.ssl.SSLSocket;
-import java.net.Socket;
-import java.rmi.server.RMIClientSocketFactory;
-
-/**
- * SslRMIClientSocketFactory
- *
- * This class implements an RMIClientSocketFactory for SSL sockets.
- * it uses the default SSLClientSocketFactory.
- *
- * This class can optionally use the following system properties, if set:
- * <code>javax.rmi.ssl.client.enabledCipherSuites</code>
- * <code>javax.rmi.ssl.client.enabledProtocols</code>
- *
- * These properties will specify a list of SSL/TLS cipher suites and protocols,
- * respectively, to enable on the created sockets.
- *
- * Both properties should consist of a comma-separated list.
- *
- * @author Sven de Marothy
- * @since 1.5
- */
-public class SslRMIClientSocketFactory
- implements RMIClientSocketFactory, Serializable
-{
-
- /**
- * Compatible with JDK 1.5
- */
- private static final long serialVersionUID = -8310631444933958385L;
-
- private String[] enabledCipherSuites, enabledProtocols;
-
- /**
- * The SSL Socket factory.
- */
- private static SSLSocketFactory socketFactory =
- (SSLSocketFactory)SSLSocketFactory.getDefault();
-
- /**
- * Creates a new SslRMIClientSocketFactory
- */
- public SslRMIClientSocketFactory()
- {
- enabledCipherSuites = getProp("javax.rmi.ssl.client.enabledCipherSuites");
- enabledProtocols = getProp("javax.rmi.ssl.client.enabledProtocols");
- }
-
- private String[] getProp(String p)
- {
- String o;
- try
- {
- o = System.getProperty(p);
- }
- catch(SecurityException se)
- {
- return null;
- }
-
- if (o == null)
- return null;
- StringTokenizer st = new StringTokenizer( o, "," );
- int n = st.countTokens();
- if( n < 1 )
- return null;
- String[] strs = new String[ n ];
- for( int i = 0; i < n; i++ )
- strs[i] = st.nextToken().trim();
-
- return strs;
- }
-
- /**
- * Creates an SSLSocket on a given port
- *
- * @throws IOException if an error occurs on socket creation.
- */
- public Socket createSocket(String host, int port) throws IOException
- {
- SSLSocket socket = (SSLSocket)socketFactory.
- createSocket( host, port );
- if( enabledCipherSuites != null )
- socket.setEnabledCipherSuites( enabledCipherSuites );
- if( enabledProtocols != null )
- socket.setEnabledProtocols( enabledProtocols );
- return socket;
- }
-
- /**
- * Compare two SslRMIServerSocketFactor instances
- */
- public boolean equals(Object obj)
- {
- if( !(obj instanceof SslRMIClientSocketFactory) )
- return false;
- SslRMIClientSocketFactory s = (SslRMIClientSocketFactory)obj;
-
- if(!SslRMIServerSocketFactory.
- cmpStrArray(enabledCipherSuites, s.enabledCipherSuites))
- return false;
-
- if(!SslRMIServerSocketFactory.
- cmpStrArray(enabledProtocols, s.enabledProtocols))
- return false;
-
- return true;
- }
-
- /**
- * Returns the hash code of this object.
- */
- public int hashCode()
- {
- int hash = 0;
- if( enabledCipherSuites != null )
- for(int i = 0; i < enabledCipherSuites.length; i++ )
- hash = hash ^ enabledCipherSuites[i].hashCode();
- if( enabledProtocols != null )
- for(int i = 0; i < enabledProtocols.length; i++ )
- hash = hash ^ enabledProtocols[i].hashCode();
- return hash;
- }
-}
diff --git a/libjava/classpath/javax/rmi/ssl/SslRMIServerSocketFactory.java b/libjava/classpath/javax/rmi/ssl/SslRMIServerSocketFactory.java
deleted file mode 100644
index d5c5398..0000000
--- a/libjava/classpath/javax/rmi/ssl/SslRMIServerSocketFactory.java
+++ /dev/null
@@ -1,213 +0,0 @@
-/* SslRMIServerSocketFactory.java --
- Copyright (C) 2006 Free Software Foundation
-
-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., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 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.ssl;
-
-import java.io.IOException;
-import javax.net.ssl.SSLServerSocketFactory;
-import javax.net.ssl.SSLServerSocket;
-import java.net.ServerSocket;
-import java.rmi.server.RMIServerSocketFactory;
-
-/**
- * SslRMIServerSocketFactory
- *
- * This class implements an RMIServerSocketFactory for SSL sockets.
- * it uses the defeult SSLServerSocketFactory.
- *
- * @author Sven de Marothy
- * @since 1.5
- */
-public class SslRMIServerSocketFactory implements RMIServerSocketFactory
-{
- private String[] enabledCipherSuites, enabledProtocols;
- private boolean needClientAuth;
-
- /**
- * The SSL ServerSocket factory.
- */
- private static SSLServerSocketFactory socketFactory =
- (SSLServerSocketFactory)SSLServerSocketFactory.getDefault();
-
- /**
- * Creates a new SslRMIServerSocketFactory with the default socket
- * cipher suites and protocols, and without requiring client authorisation.
- */
- public SslRMIServerSocketFactory()
- {
- enabledCipherSuites = enabledProtocols = null;
- needClientAuth = false;
- }
-
- /**
- * Creates a new SslRMIServerSocketFactory with a given set of socket
- * cipher suites and protocols. needClientAuth specifies if client
- * authorization is required.
- *
- * @param enabledCipherSuites - the cypher suites to enable
- * or <code>null</code> for the defauls.
- * @param enabledCipherSuites - the protocols to enable,
- * or <code>null</code> for the defauls.
- * @param needClientAuth - specify client authorization requirement.
- * @throws IllegalArgumentException if any of the ciphers or protocols
- * specified are not available.
- */
- public SslRMIServerSocketFactory(String[] enabledCipherSuites,
- String[] enabledProtocols,
- boolean needClientAuth)
- {
- this.enabledCipherSuites = enabledCipherSuites;
- this.enabledProtocols = enabledProtocols;
- this.needClientAuth = needClientAuth;
- try
- {
- if( enabledProtocols != null || enabledCipherSuites != null )
- createServerSocket( 0 ); // stupid way to test the parameters
- }
- catch(IOException e)
- {
- // Can this happen? FIXME.
- throw new IllegalArgumentException();
- }
- }
-
- /**
- * Creates an SSLServerSocket on a given port
- *
- * @throws IOException if an error occurs on socket creation.
- */
- public ServerSocket createServerSocket(int port) throws IOException
- {
- SSLServerSocket socket = (SSLServerSocket)socketFactory.
- createServerSocket( port );
- if( enabledCipherSuites != null )
- socket.setEnabledCipherSuites( enabledCipherSuites );
- if( enabledProtocols != null )
- socket.setEnabledProtocols( enabledProtocols );
- socket.setNeedClientAuth( needClientAuth );
- return socket;
- }
-
- /**
- * Compare two SslRMIServerSocketFactor instances
- */
- public boolean equals(Object obj)
- {
- if( !(obj instanceof SslRMIServerSocketFactory) )
- return false;
- SslRMIServerSocketFactory s = (SslRMIServerSocketFactory)obj;
- if( needClientAuth != s.needClientAuth )
- return false;
-
- if(!cmpStrArray(enabledCipherSuites, s.enabledCipherSuites))
- return false;
-
- if(!cmpStrArray(enabledProtocols, s.enabledProtocols))
- return false;
-
- return true;
- }
-
- /**
- * Compare two string arrays.
- */
- static boolean cmpStrArray(String[] a, String[] b)
- {
- if( ( a == null || b == null ) && a != b )
- return false;
-
- if( a != null )
- {
- if( a.length != b.length )
- return false;
- for( int i = 0; i < a.length; i++ )
- if(!a[i].equals(b[i]))
- return false;
- }
-
- return true;
- }
-
- /**
- * Returns the enabled cipher suites, or <code>null</code>
- * if the defaults are to be used.
- * @returns a string array of cipher suite names
- */
- public String[] getEnabledCipherSuites()
- {
- if( enabledCipherSuites == null )
- return null;
- return (String[])enabledCipherSuites.clone();
- }
-
- /**
- * Returns the enabled protocols, or <code>null</code> if the defaults are
- * to be used.
- *
- * @returns a string array of protocol names
- */
- public String[] getEnabledProtocols()
- {
- if( enabledProtocols == null )
- return null;
- return (String[])enabledProtocols.clone();
- }
-
- /**
- * Returns whether client authorization is needed.
- */
- public boolean getNeedClientAuth()
- {
- return needClientAuth;
- }
-
- /**
- * Returns the hash code of this object.
- */
- public int hashCode()
- {
- int hash = 0;
- if( enabledCipherSuites != null )
- for(int i = 0; i < enabledCipherSuites.length; i++ )
- hash = hash ^ enabledCipherSuites[i].hashCode();
- if( enabledProtocols != null )
- for(int i = 0; i < enabledProtocols.length; i++ )
- hash = hash ^ enabledProtocols[i].hashCode();
- hash = ( needClientAuth ) ? (hash^0xFFFF) : hash;
- return hash;
- }
-}