You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by gh...@apache.org on 2006/05/18 22:01:30 UTC

svn commit: r407625 [2/16] - in /incubator/harmony/enhanced/classlib/trunk/modules/rmi3: ./ doc/ make/ src/ src/common/ src/common/javasrc/ src/common/javasrc/java/ src/common/javasrc/java/rmi/ src/common/javasrc/java/rmi/activation/ src/common/javasrc...

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/AlreadyBoundException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/AlreadyBoundException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/AlreadyBoundException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/AlreadyBoundException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,47 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+public class AlreadyBoundException extends Exception {
+    private static final long serialVersionUID = 9218657361741657110L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public AlreadyBoundException(String msg) {
+        super(msg);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public AlreadyBoundException() {
+        super();
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/AlreadyBoundException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ConnectException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ConnectException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ConnectException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ConnectException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,47 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+public class ConnectException extends RemoteException {
+    private static final long serialVersionUID = 4863550261346652506L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ConnectException(String msg, Exception cause) {
+        super(msg, cause);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ConnectException(String msg) {
+        super(msg);
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ConnectException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ConnectIOException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ConnectIOException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ConnectIOException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ConnectIOException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,47 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+public class ConnectIOException extends RemoteException {
+    private static final long serialVersionUID = -8087809532704668744L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ConnectIOException(String msg, Exception cause) {
+        super(msg, cause);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ConnectIOException(String msg) {
+        super(msg);
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ConnectIOException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/MarshalException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/MarshalException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/MarshalException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/MarshalException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,47 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+public class MarshalException extends RemoteException {
+    private static final long serialVersionUID = 6223554758134037936L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public MarshalException(String msg, Exception cause) {
+        super(msg, cause);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public MarshalException(String msg) {
+        super(msg);
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/MarshalException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/MarshalledObject.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/MarshalledObject.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/MarshalledObject.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/MarshalledObject.java Thu May 18 13:01:22 2006
@@ -0,0 +1,95 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.8.4.2 $
+ */
+package java.rmi;
+
+import java.io.IOException;
+import java.io.Serializable;
+import java.io.ByteArrayOutputStream;
+import java.util.Arrays;
+
+import org.apache.harmony.rmi.MarshalledObjectInputStream;
+import org.apache.harmony.rmi.MarshalledObjectOutputStream;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.8.4.2 $
+ */
+public final class MarshalledObject implements Serializable {
+    private static final long serialVersionUID = 8988374069173025854L;
+    byte[] objBytes;
+    byte[] locBytes;
+    int hash;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public MarshalledObject(Object obj) throws IOException {
+        ByteArrayOutputStream objStream = new ByteArrayOutputStream();
+        MarshalledObjectOutputStream moStream =
+                new MarshalledObjectOutputStream(objStream);
+        moStream.writeObject(obj);
+        moStream.flush();
+        objBytes = objStream.toByteArray();
+        locBytes = moStream.getLocBytes();
+
+        // calculate hash code
+        hash = 0;
+
+        for (int i = 0; i < objBytes.length; ++i) {
+            hash = hash * 31 + objBytes[i];
+        }
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public boolean equals(Object obj) {
+        if (!(obj instanceof MarshalledObject)) {
+            return false;
+        }
+        MarshalledObject anotherObj = (MarshalledObject) obj;
+        return (hash == anotherObj.hash)
+                || (Arrays.equals(objBytes, anotherObj.objBytes));
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public Object get() throws IOException, ClassNotFoundException {
+        if (objBytes == null) {
+            return null;
+        }
+        MarshalledObjectInputStream moin =
+                new MarshalledObjectInputStream(objBytes, locBytes);
+        return moin.readObject();
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public int hashCode() {
+        return hash;
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/MarshalledObject.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/Naming.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/Naming.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/Naming.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/Naming.java Thu May 18 13:01:22 2006
@@ -0,0 +1,209 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.12.4.2 $
+ */
+package java.rmi;
+
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.rmi.registry.LocateRegistry;
+import java.rmi.registry.Registry;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * This class could not be instantiated.
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.12.4.2 $
+ */
+public final class Naming {
+
+    // This class could not be instantiated.
+    private Naming() {
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static String[] list(String name)
+            throws RemoteException, MalformedURLException {
+        if (name == null) {
+            throw new NullPointerException("URL could not be null.");
+        }
+        RegistryURL url = getRegistryURL(name, true);
+        Registry reg = LocateRegistry.getRegistry(url.host, url.port);
+        String[] names = reg.list();
+        String regName = "//" + ((url.host == null) ? "" : url.host) + ":"
+                + url.port + "/";
+
+        for (int i = 0; i < names.length; ++i) {
+            names[i] = regName + names[i];
+        }
+        return names;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static void rebind(String name, Remote obj)
+            throws RemoteException, MalformedURLException {
+        if (name == null) {
+            throw new NullPointerException("URL could not be null.");
+        }
+        RegistryURL url = getRegistryURL(name, false);
+        Registry reg = LocateRegistry.getRegistry(url.host, url.port);
+        reg.rebind(url.name, obj);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static void unbind(String name)
+            throws RemoteException, NotBoundException, MalformedURLException {
+        if (name == null) {
+            throw new NullPointerException("URL could not be null.");
+        }
+        RegistryURL url = getRegistryURL(name, false);
+        Registry reg = LocateRegistry.getRegistry(url.host, url.port);
+        reg.unbind(url.name);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static void bind(String name, Remote obj)
+            throws AlreadyBoundException, MalformedURLException,
+            RemoteException {
+        if (name == null) {
+            throw new NullPointerException("URL could not be null.");
+        }
+        RegistryURL url = getRegistryURL(name, false);
+        Registry reg = LocateRegistry.getRegistry(url.host, url.port);
+        reg.bind(url.name, obj);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static Remote lookup(String name)
+            throws NotBoundException, MalformedURLException, RemoteException {
+        if (name == null) {
+            throw new NullPointerException("URL could not be null.");
+        }
+        RegistryURL url = getRegistryURL(name, false);
+        Registry reg = LocateRegistry.getRegistry(url.host, url.port);
+        return reg.lookup(url.name);
+    }
+
+    /*
+     * Parse the given name and returnes URL containing parsed parameters.
+     */
+    private static RegistryURL getRegistryURL(String strUrl,
+                                              boolean ignoreEmptyNames)
+            throws MalformedURLException {
+        URI uri;
+
+        try {
+            uri = new URI(strUrl);
+        } catch (URISyntaxException use) {
+            throw new MalformedURLException("Invalid URL \"" + strUrl + "\":"
+                    + use);
+        }
+        String prot = uri.getScheme();
+
+        if ((prot != null) && !prot.toLowerCase().equals("rmi")) {
+            throw new MalformedURLException(
+                    "Non-rmi protocol in URL \"" + strUrl + "\": " + prot);
+        }
+
+        if (uri.getUserInfo() != null) {
+            throw new MalformedURLException("Invalid character ('@') in URL \""
+                    + strUrl + "\" host part.");
+        } else if (uri.getQuery() != null) {
+            throw new MalformedURLException("Invalid character ('?') in URL \""
+                    + strUrl + "\" name part.");
+        } else if (uri.getFragment() != null) {
+            throw new MalformedURLException("Invalid character ('#') in URL \""
+                    + strUrl + "\" name part.");
+        }
+        int port = uri.getPort();
+        String auth = uri.getAuthority();
+
+        if (auth != null && auth.startsWith(":") && auth.length() != 1) {
+            // to handle URLs like "rmi://:1099/xxx"
+            try {
+                port = Integer.parseInt(auth.substring(1));
+            } catch (NumberFormatException nfe) {
+                throw new MalformedURLException("Invalid port number in URL \""
+                        + strUrl + "\": " + auth.substring(1));
+            }
+        }
+
+        if (port == -1) {
+            port = Registry.REGISTRY_PORT;
+        }
+        String path = uri.getPath();
+
+        if (!ignoreEmptyNames) {
+            if (path == null || path.length() == 0) {
+                throw new MalformedURLException(
+                        "Name could not be empty (URL: \"" + strUrl + "\").");
+            }
+        }
+
+        if (path != null && path.startsWith("/")) {
+            path = path.substring(1);
+        }
+        String host = uri.getHost();
+
+        if (host == null) {
+            host = "localhost";
+        }
+        return new RegistryURL(host, port, path);
+    }
+
+
+    /*
+     * Auxiliary class holding information about host, port and name.
+     */
+    private static class RegistryURL {
+
+        // Host name.
+        String host;
+
+        // Port number.
+        int port;
+
+        // bind name
+        String name;
+
+        /*
+         * Constructs RegistryURL from the given host, port and bind name.
+         */
+        RegistryURL(String host, int port, String name) {
+            this.host = host;
+            this.port = port;
+            this.name = name;
+        }
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/Naming.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/NoSuchObjectException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/NoSuchObjectException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/NoSuchObjectException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/NoSuchObjectException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+public class NoSuchObjectException extends RemoteException {
+    private static final long serialVersionUID = 6619395951570472985L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public NoSuchObjectException(String msg) {
+        super(msg);
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/NoSuchObjectException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/NotBoundException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/NotBoundException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/NotBoundException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/NotBoundException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,47 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+public class NotBoundException extends Exception {
+    private static final long serialVersionUID = -1857741824849069317L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public NotBoundException(String msg) {
+        super(msg);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public NotBoundException() {
+        super();
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/NotBoundException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RMISecurityException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RMISecurityException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RMISecurityException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RMISecurityException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,47 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+public class RMISecurityException extends SecurityException {
+    private static final long serialVersionUID = -8433406075740433514L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public RMISecurityException(String msg, String arg) {
+        super(msg);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public RMISecurityException(String msg) {
+        super(msg);
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RMISecurityException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RMISecurityManager.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RMISecurityManager.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RMISecurityManager.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RMISecurityManager.java Thu May 18 13:01:22 2006
@@ -0,0 +1,39 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+public class RMISecurityManager extends SecurityManager {
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public RMISecurityManager() {
+        super();
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RMISecurityManager.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/Remote.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/Remote.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/Remote.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/Remote.java Thu May 18 13:01:22 2006
@@ -0,0 +1,32 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+public interface Remote {
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/Remote.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RemoteException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RemoteException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RemoteException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RemoteException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,81 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.7.4.1 $
+ */
+package java.rmi;
+
+import java.io.IOException;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.7.4.1 $
+ */
+public class RemoteException extends IOException {
+    private static final long serialVersionUID = -5148567311918794206L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public Throwable detail;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public RemoteException(String msg, Throwable cause) {
+        super(msg);
+        detail = cause;
+        initCause(null);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public RemoteException(String msg) {
+        this(msg, null);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public RemoteException() {
+        initCause(null);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public Throwable getCause() {
+        return detail;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public String getMessage() {
+        if (detail == null) {
+            return super.getMessage();
+        } else {
+            return super.getMessage() + "; nested exception is:\n\t" + detail;
+        }
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/RemoteException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerError.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerError.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerError.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerError.java Thu May 18 13:01:22 2006
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.5.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.5.4.1 $
+ */
+public class ServerError extends RemoteException {
+    private static final long serialVersionUID = 8455284893909696482L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ServerError(String msg, Error cause) {
+        super(msg, cause);
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerError.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,47 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.5.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.5.4.1 $
+ */
+public class ServerException extends RemoteException {
+    private static final long serialVersionUID = -4775845313121906682L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ServerException(String msg, Exception cause) {
+        super(msg, cause);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ServerException(String msg) {
+        super(msg);
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerRuntimeException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerRuntimeException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerRuntimeException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerRuntimeException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+public class ServerRuntimeException extends RemoteException {
+    private static final long serialVersionUID = 7054464920481467219L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ServerRuntimeException(String msg, Exception cause) {
+        super(msg, cause);
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/ServerRuntimeException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/StubNotFoundException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/StubNotFoundException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/StubNotFoundException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/StubNotFoundException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,47 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+public class StubNotFoundException extends RemoteException {
+    private static final long serialVersionUID = -7088199405468872373L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public StubNotFoundException(String msg, Exception cause) {
+        super(msg, cause);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public StubNotFoundException(String msg) {
+        super(msg);
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/StubNotFoundException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnexpectedException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnexpectedException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnexpectedException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnexpectedException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,47 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+public class UnexpectedException extends RemoteException {
+    private static final long serialVersionUID = 1800467484195073863L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public UnexpectedException(String msg, Exception cause) {
+        super(msg, cause);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public UnexpectedException(String msg) {
+        super(msg);
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnexpectedException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnknownHostException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnknownHostException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnknownHostException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnknownHostException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,47 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+public class UnknownHostException extends RemoteException {
+    private static final long serialVersionUID = -8152710247442114228L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public UnknownHostException(String msg, Exception cause) {
+        super(msg, cause);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public UnknownHostException(String msg) {
+        super(msg);
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnknownHostException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnmarshalException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnmarshalException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnmarshalException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnmarshalException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,47 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+package java.rmi;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Mikhail A. Markov
+ * @version $Revision: 1.4.4.1 $
+ */
+public class UnmarshalException extends RemoteException {
+    private static final long serialVersionUID = 594380845140740218L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public UnmarshalException(String msg, Exception cause) {
+        super(msg, cause);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public UnmarshalException(String msg) {
+        super(msg);
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/UnmarshalException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/Activatable.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/Activatable.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/Activatable.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/Activatable.java Thu May 18 13:01:22 2006
@@ -0,0 +1,220 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Victor A. Martynov
+ * @version $Revision: 1.18.4.3 $
+ */
+package java.rmi.activation;
+
+import java.rmi.MarshalledObject;
+import java.rmi.NoSuchObjectException;
+import java.rmi.Remote;
+import java.rmi.RemoteException;
+import java.rmi.server.RMIClientSocketFactory;
+import java.rmi.server.RMIServerSocketFactory;
+import java.rmi.server.RemoteObject;
+import java.rmi.server.RemoteServer;
+
+import org.apache.harmony.rmi.common.RMILog;
+import org.apache.harmony.rmi.remoteref.ActivatableServerRef;
+import org.apache.harmony.rmi.server.ExportManager;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Victor A. Martynov
+ * @version $Revision: 1.18.4.3 $
+ */
+public abstract class Activatable extends RemoteServer {
+
+    /**
+     * serialVersionUID: -3120617863591563455L
+     */
+    private static final long serialVersionUID = -3120617863591563455L;
+
+    /**
+     * ActivationID
+     */
+    private ActivationID id;
+
+    /**
+     * RMILogger that is used to print all the debug information.
+     *
+     */
+    private static RMILog rlog = RMILog.getActivationLog();
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    protected Activatable(String codebase, MarshalledObject data,
+            boolean restart, int port) throws ActivationException,
+            RemoteException {
+        super();
+        id = exportObject(this, codebase, data, restart, port);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    protected Activatable(String codebase, MarshalledObject data,
+            boolean restart, int port, RMIClientSocketFactory csf,
+            RMIServerSocketFactory ssf) throws ActivationException,
+            RemoteException {
+        super();
+        id = exportObject(this, codebase, data, restart, port, csf, ssf);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    protected Activatable(ActivationID id, int port) throws RemoteException {
+        super();
+        rlog.log(RMILog.VERBOSE, "Activatable.<init>[" + id + ", " + port + "]");
+        this.id = id;
+
+        rlog.log(RMILog.VERBOSE, "Activatable >>> Ready to export object:");
+        exportObject(this, id, port);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    protected Activatable(ActivationID id, int port,
+            RMIClientSocketFactory csf, RMIServerSocketFactory ssf)
+            throws RemoteException {
+        super();
+        this.id = id;
+        exportObject(this, id, port, csf, ssf);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    protected ActivationID getID() {
+        return id;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static Remote register(ActivationDesc desc)
+            throws UnknownGroupException, ActivationException, RemoteException {
+
+        ActivationSystem as = ActivationGroup.getSystem();
+        ActivationID aid = as.registerObject(desc);
+        rlog.log(RMILog.VERBOSE, "aid = " + aid);
+
+        return org.apache.harmony.rmi.remoteref.ActivatableRef
+                .getStub(desc, aid);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static ActivationID exportObject(Remote obj, String location,
+            MarshalledObject data, boolean restart, int port,
+            RMIClientSocketFactory csf, RMIServerSocketFactory ssf)
+            throws ActivationException, RemoteException {
+
+        ActivationDesc adesc = new ActivationDesc(obj.getClass().getName(), location, data, restart);
+        ActivationID aid = ActivationGroup.getSystem().registerObject(adesc);
+        Remote stub = exportObject(obj, aid, port, csf, ssf);
+
+        return aid;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static Remote exportObject(Remote robj, ActivationID aid, int port,
+            RMIClientSocketFactory csf, RMIServerSocketFactory ssf)
+            throws RemoteException {
+
+        ActivatableServerRef asr = new ActivatableServerRef(aid, port, csf, ssf);
+
+        return ExportManager.exportObject(robj, asr, false); //asr.exportObject(robj, null, false, true, true);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static ActivationID exportObject(Remote robj, String location,
+            MarshalledObject data, boolean restart, int port)
+            throws ActivationException, RemoteException {
+
+        ActivationDesc adesc = new ActivationDesc(robj.getClass().getName(),
+                location, data, restart);
+        ActivationID aid = ActivationGroup.getSystem().registerObject(adesc);
+        Remote stub = exportObject(robj, aid, port);
+        ActivationGroup curAG = ActivationGroup.getCurrentAG();
+        System.out.println("CurAG = "+curAG);
+        curAG.activeObject(aid, robj);
+
+        return aid;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static Remote exportObject(Remote robj, ActivationID aid, int port) throws RemoteException {
+        rlog.log(RMILog.VERBOSE, "Activatable >>> exportObject");
+        ActivatableServerRef asr = new ActivatableServerRef(aid, port);
+        if (robj instanceof Activatable) {
+            ((Activatable) robj).ref = asr;
+        }
+        rlog.log(RMILog.VERBOSE, "Activatable >>> ActivatableServerRef=" + asr);
+
+        ExportManager.exportObject(robj, asr, false, true, true);
+        rlog.log(RMILog.VERBOSE, "Activatable >>> asr after export: " + asr);
+        Remote rmt = RemoteObject.toStub(robj);
+        rlog.log(RMILog.VERBOSE, "Activatable.exportObject: stub = " + rmt);
+        return rmt;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static boolean inactive(ActivationID aid)
+            throws UnknownObjectException, ActivationException, RemoteException {
+        return ActivationGroup.getCurrentAG().inactiveObject(aid);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static void unregister(ActivationID aid)
+            throws UnknownObjectException, ActivationException, RemoteException {
+        ActivationGroup.getSystem().unregisterObject(aid);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static boolean unexportObject(Remote obj, boolean force)
+            throws NoSuchObjectException {
+        return ExportManager.unexportObject(obj, force);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public String toString() {
+        return this.getClass() + ": [ActivationID =" + id + "; Ref =" + ref+ "]";
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/Activatable.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivateFailedException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivateFailedException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivateFailedException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivateFailedException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,50 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Victor A. Martynov
+ * @version $Revision: 1.7.2.3 $
+ */
+package java.rmi.activation;
+
+import java.rmi.RemoteException;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Victor A. Martynov
+ * @version $Revision: 1.7.2.3 $
+ */
+public class ActivateFailedException extends RemoteException {
+
+    private static final long serialVersionUID = 4863550261346652506L;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivateFailedException(String message, Exception nested_exception) {
+        super(message, nested_exception);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivateFailedException(String message) {
+        super(message);
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivateFailedException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationDesc.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationDesc.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationDesc.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationDesc.java Thu May 18 13:01:22 2006
@@ -0,0 +1,210 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Victor A. Martynov
+ * @version $Revision: 1.9.2.3 $
+ */
+package java.rmi.activation;
+
+import java.io.Serializable;
+import java.rmi.MarshalledObject;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Victor A. Martynov
+ * @version $Revision: 1.9.2.3 $
+ */
+public final class ActivationDesc implements Serializable {
+
+    /**
+     * This value shows that the class is compatible with J2SDK v. 1.2
+     */
+    private static final long serialVersionUID = 7455834104417690957L;
+
+    /**
+     * @serial The ActivationGroupID of the object.
+     */
+    private ActivationGroupID groupID;
+
+    /**
+     * @serial The className of the object.
+     */
+    private String className;
+
+    /**
+     * @serial The location(<i>codebase/URLs</i>) from which the class of the object can be loaded.
+     */
+    private String location;
+
+    /**
+     * @serial MarshalledObject that contain object-specific initialization data used during each activation.
+     */
+    private MarshalledObject data;
+
+    /**
+     * @serial If the object requires restart service, restart should be true. If restart is false, the object is simply activated upon demand.
+     */
+    private boolean restart;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivationDesc(String className, String location,
+            MarshalledObject data) throws ActivationException {
+
+        ActivationGroupID currentGID = ActivationGroup.currentGroupID();
+
+        if (currentGID == null) {
+            throw new ActivationException(
+                    "The default group for this JVM is inactive.");
+        }
+
+        this.groupID = currentGID;
+        this.className = className;
+        this.location = location;
+        this.data = data;
+        this.restart = false;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivationDesc(String className, String location,
+            MarshalledObject data, boolean restart) throws ActivationException {
+
+        ActivationGroupID currentGID = ActivationGroup.currentGroupID();
+
+        if (currentGID == null) {
+            throw new ActivationException(
+                    "The default group for this JVM is inactive.");
+        }
+
+        this.groupID = currentGID;
+        this.className = className;
+        this.location = location;
+        this.data = data;
+        this.restart = restart;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivationDesc(ActivationGroupID groupID, String className,
+            String location, MarshalledObject data) {
+
+        if (groupID == null) {
+            throw new IllegalArgumentException("The groupID can't be null.");
+        }
+
+        this.groupID = groupID;
+        this.className = className;
+        this.location = location;
+        this.data = data;
+        this.restart = false;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivationDesc(ActivationGroupID groupID, String className,
+            String location, MarshalledObject data, boolean restart) {
+
+        if (groupID == null) {
+            throw new IllegalArgumentException("The groupID can't be null.");
+        }
+        this.groupID = groupID;
+        this.className = className;
+        this.location = location;
+        this.data = data;
+        this.restart = restart;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivationGroupID getGroupID() {
+        return groupID;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public MarshalledObject getData() {
+        return data;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public String getLocation() {
+        return location;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public String getClassName() {
+        return className;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public boolean getRestartMode() {
+        return restart;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public boolean equals(Object obj) {
+        if (obj instanceof ActivationDesc) {
+            ActivationDesc objCasted = (ActivationDesc) obj;
+            boolean p0, p1, p2, p3, p4;
+            p0 = (groupID == null) ? objCasted.groupID == null : groupID
+                    .equals(objCasted.groupID);
+            p1 = (className == null) ? objCasted.className == null : className
+                    .equals(objCasted.className);
+            p2 = (location == null) ? objCasted.location == null : location
+                    .equals(objCasted.location);
+            p3 = (data == null) ? objCasted.data == null : data
+                    .equals(objCasted.data);
+            p4 = (restart == objCasted.restart);
+            return p0 && p1 && p2 && p3 && p4;
+
+        }
+        return false;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public int hashCode() {
+        int groupID_Hash = (groupID == null) ? 0 : groupID.hashCode();
+        int className_Hash = (className == null) ? 0 : className.hashCode();
+        int location_Hash = (location == null) ? 0 : location.hashCode();
+        int data_Hash = (data == null) ? 0 : data.hashCode();
+        int restart_Hash = (restart == false) ? 0 : 1;
+
+        int hashCode = groupID_Hash ^ className_Hash ^ location_Hash
+                ^ data_Hash ^ restart_Hash;
+        return hashCode;
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationDesc.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationException.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationException.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationException.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationException.java Thu May 18 13:01:22 2006
@@ -0,0 +1,74 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Victor A. Martynov
+ * @version $Revision: 1.7.4.2 $
+ */
+package java.rmi.activation;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Victor A. Martynov
+ * @version $Revision: 1.7.4.2 $
+ */
+public class ActivationException extends Exception {
+
+    private static final long serialVersionUID = -4320118837291406071l;
+
+    public Throwable detail;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivationException(String message, Throwable detail) {
+        super(message);
+        this.detail = detail;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivationException(String message) {
+        super(message);
+        this.detail = null;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivationException() {
+        super();
+        this.detail = null;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public Throwable getCause() {
+        return detail;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public String getMessage() {
+        return super.getMessage() + "[detail throwable = " + detail + "] ";
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroup.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroup.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroup.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroup.java Thu May 18 13:01:22 2006
@@ -0,0 +1,262 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Victor A. Martynov
+ * @version $Revision: 1.17.2.3 $
+ */
+package java.rmi.activation;
+
+import java.lang.reflect.Constructor;
+import java.rmi.MarshalledObject;
+import java.rmi.Naming;
+import java.rmi.Remote;
+import java.rmi.RemoteException;
+import java.rmi.server.RMIClassLoader;
+import java.rmi.server.RemoteObject;
+import java.rmi.server.UnicastRemoteObject;
+import java.security.AccessController;
+
+import org.apache.harmony.rmi.common.GetStringPropAction;
+import org.apache.harmony.rmi.common.RMILog;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Victor A. Martynov
+ * @version $Revision: 1.17.2.3 $
+ */
+public abstract class ActivationGroup extends UnicastRemoteObject
+        implements ActivationInstantiator {
+
+    /**
+     * The ActivationSystem for this VM.
+     */
+    private static ActivationSystem current_AS;
+
+    /**
+     * Current ActivationGroupID
+     */
+    private static ActivationGroupID current_AGID;
+
+    /**
+     * Current ActivationGroup.
+     */
+    private static ActivationGroup current_AG;
+
+    /**
+     * Boolean value that is used to prohibit the recurring creation of
+     * ActivationGroup for this VM.
+     */
+    private static boolean isGroupCreated = false;
+
+    /**
+     * Information got from ActivationGroup Serialized form.
+     */
+    private static final long serialVersionUID = -7696947875314805420L;
+
+    private ActivationGroupID groupID;
+
+    private ActivationMonitor monitor;
+
+    private long incarnation;
+
+    private static RMILog rlog = RMILog.getActivationLog();
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    protected ActivationGroup(ActivationGroupID groupID) throws RemoteException {
+        /**
+         * We need to export this group, so we call the constructor of the
+         * superclass.
+         */
+        super(0);
+        this.groupID = groupID;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    protected void activeObject(ActivationID id, MarshalledObject mobj)
+            throws ActivationException, UnknownObjectException, RemoteException {
+        try {
+            Thread.sleep(500);
+        } catch (Throwable t) {
+        }
+        rlog.log(RMILog.VERBOSE, "ActivationGroup.activeObject: " + id
+                + "; " + mobj);
+        rlog.log(RMILog.VERBOSE, "monitor: " + monitor);
+        monitor.activeObject(id, mobj);
+        rlog
+                .log(RMILog.VERBOSE,
+                        "ActivationGroup.activeObject finished.");
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public abstract void activeObject(ActivationID id, Remote obj)
+            throws ActivationException, UnknownObjectException, RemoteException;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static synchronized ActivationGroup createGroup(
+            ActivationGroupID id, ActivationGroupDesc desc, long incarnation)
+            throws ActivationException {
+        rlog.log(RMILog.VERBOSE, "ActivationGroup.createGroup [id=" + id
+                + ", desc=" + desc + ", incarnation=" + incarnation);
+
+        SecurityManager sm = System.getSecurityManager();
+
+        if(sm != null) {
+            sm.checkSetFactory();
+        }
+
+        /*
+         * Classname of the ActivationGroup implemenation. If the group class
+         * name was given in 'desc' assign it to group_CN, use default
+         * otherwise.
+         */
+        String group_CN = (desc.getClassName() == null) ?
+                "org.apache.harmony.rmi.activation.ActivationGroupImpl"
+                : desc.getClassName();
+
+        rlog.log(RMILog.VERBOSE, "group_CN = " + group_CN);
+
+        if (current_AG != null) {
+            throw new ActivationException(
+                    "The ActivationGroup for this VM already exists.");
+        }
+        try {
+            rlog.log(RMILog.VERBOSE, "Ready to load ActivationGroupImpl class");
+            Class cl = RMIClassLoader.loadClass(desc.getLocation(), group_CN);
+            rlog.log(RMILog.VERBOSE, "ag class = " + cl);
+
+            Class[] special_constructor_parameter_classes = {
+                    ActivationGroupID.class, MarshalledObject.class };
+
+            Constructor constructor = cl
+                    .getConstructor(special_constructor_parameter_classes);
+            Object[] constructor_parameters = { id, desc.getData() };
+            ActivationGroup ag = (ActivationGroup) constructor
+                    .newInstance(constructor_parameters);
+            rlog.log(RMILog.VERBOSE, "ag = " + ag);
+            current_AS = id.getSystem();
+            rlog.log(RMILog.VERBOSE, "current_AS = " + current_AS);
+
+            ag.incarnation = incarnation;
+            rlog.log(RMILog.VERBOSE, "ag.incarnation = " + ag.incarnation);
+
+            ag.monitor = current_AS.activeGroup(id, ag, incarnation);
+            rlog.log(RMILog.VERBOSE, "ag.monitor = " + ag.monitor);
+
+            current_AG = ag;
+            current_AGID = id;
+            isGroupCreated = true;
+
+        } catch (Throwable t) {
+            rlog.log(RMILog.VERBOSE, "Exception in createGroup: " + t);
+            t.printStackTrace();
+            throw new ActivationException("Unable to create group.", t);
+        }
+        rlog.log(RMILog.VERBOSE, "Group created: " + current_AG);
+
+        return current_AG;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static synchronized ActivationGroupID currentGroupID() {
+        return current_AGID;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static synchronized ActivationSystem getSystem()
+            throws ActivationException {
+        rlog.log(RMILog.VERBOSE,
+                "---------- ActivationGroup.getSystem() ----------");
+        System.out.flush();
+
+        try {
+            if (current_AS == null) {
+
+                String port = (String)AccessController.doPrivileged(
+                        new GetStringPropAction("java.rmi.activation.port",
+                                                ActivationSystem.SYSTEM_PORT+""));
+
+                current_AS = (ActivationSystem) Naming.lookup("//:" + port
+                        + "/java.rmi.activation.ActivationSystem");
+                rlog.log(RMILog.VERBOSE,
+                        "Activation System was got using Naming.lookup() at port "
+                                + port);
+            }
+        } catch (Throwable t) {
+            throw new ActivationException("getSystem fails.", t);
+        }
+        rlog.log(RMILog.VERBOSE, "current_AS = " + current_AS);
+        rlog.log(RMILog.VERBOSE, "current_AS.ref = "
+                + ((RemoteObject) current_AS).getRef());
+
+        rlog.log(RMILog.VERBOSE,
+                "---------- END -> ActivationGroup.getSystem() ----------");
+
+        return current_AS;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    protected void inactiveGroup() throws UnknownGroupException,
+            RemoteException {
+        monitor.inactiveGroup(groupID, incarnation);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public boolean inactiveObject(ActivationID id) throws ActivationException,
+            UnknownObjectException, RemoteException {
+        monitor.inactiveObject(id);
+        return true;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static synchronized void setSystem(ActivationSystem system)
+            throws ActivationException {
+        if (current_AS != null) {
+            throw new ActivationException(
+                    "The ActivationSystem for this ActivationGroup was already defined.");
+        }
+        current_AS = system;
+    }
+
+    /* ********************************************************************* */
+    /* ************** Package protected methods **************************** */
+    /* ********************************************************************* */
+
+    static synchronized ActivationGroup getCurrentAG() {
+        return current_AG;
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroup.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroupDesc.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroupDesc.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroupDesc.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroupDesc.java Thu May 18 13:01:22 2006
@@ -0,0 +1,223 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Victor A. Martynov
+ * @version $Revision: 1.9.2.2 $
+ */
+package java.rmi.activation;
+
+import java.io.Serializable;
+import java.rmi.MarshalledObject;
+import java.util.Properties;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Victor A. Martynov
+ * @version $Revision: 1.9.2.2 $
+ */
+public final class ActivationGroupDesc implements Serializable {
+
+    private static final long serialVersionUID = -4936225423168276595L;
+
+    /**
+     * The group's fully package qualified class name.
+     */
+    String className;
+
+    /**
+     * The location from where to load the group's class.
+     */
+    String location;
+
+    /**
+     * The group's initialization data.
+     */
+    MarshalledObject data;
+
+    /**
+     * The controlling options for executing the VM in another process.
+     */
+    ActivationGroupDesc.CommandEnvironment env;
+
+    /**
+     * A properties map which will override those set by default in the subprocess environment
+     */
+    Properties props;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivationGroupDesc(Properties props,
+            ActivationGroupDesc.CommandEnvironment env) {
+        this(null, null, null, props, env);
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivationGroupDesc(String className, String codebase,
+            MarshalledObject data, Properties props,
+            ActivationGroupDesc.CommandEnvironment env) {
+
+        this.className = className;
+        this.location = codebase;
+        this.data = data;
+        this.props = props;
+        this.env = env;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public String getClassName() {
+        return className;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public String getLocation() {
+        return location;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public MarshalledObject getData() {
+        return data;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivationGroupDesc.CommandEnvironment getCommandEnvironment() {
+        return env;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public Properties getPropertyOverrides() {
+        if (props == null) {
+            return null;
+        } else {
+            return (Properties) props.clone();
+        }
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public boolean equals(Object obj) {
+        if (obj instanceof ActivationGroupDesc) {
+            ActivationGroupDesc obj_agd = (ActivationGroupDesc) obj;
+            boolean p0, p1, p2, p3, p4, p5;
+
+            p0 = (location == null) ? obj_agd.location == null : location
+                    .equals(obj_agd.location);
+            p1 = (className == null) ? obj_agd.className == null : className
+                    .equals(obj_agd.className);
+            p2 = (data == null) ? obj_agd.data == null : data
+                    .equals(obj_agd.data);
+            p3 = (env == null) ? obj_agd.env == null : env.equals(obj_agd.env);
+            p4 = (props == null) ? obj_agd.props == null : props
+                    .equals(obj_agd.props);
+
+            return p0 & p1 & p2 & p3 & p4;
+        }
+        return false;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public int hashCode() {
+        int h0 = (className == null) ? 0 : className.hashCode();
+        int h1 = (location == null) ? 0 : location.hashCode();
+        int h2 = (data == null) ? 0 : data.hashCode();
+        int h3 = (props == null) ? 0 : props.hashCode();
+
+        return h0 ^ h1 ^ h2 ^ h3;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public static class CommandEnvironment implements Serializable {
+
+        private static final long serialVersionUID = 6165754737887770191L;
+
+        private String command = null;
+
+        private String options[] = null;
+
+        /**
+         * @com.intel.drl.spec_ref
+         */
+        public CommandEnvironment(String command, String[] options) {
+            this.command = command;
+            this.options = options;
+        }
+
+        /**
+         * @com.intel.drl.spec_ref
+         */
+        public String[] getCommandOptions() {
+            if (this.options == null) {
+                return new String[0];
+            }
+            return this.options;
+        }
+
+        /**
+         * @com.intel.drl.spec_ref
+         */
+        public String getCommandPath() {
+            return this.command;
+        }
+
+        /**
+         * @com.intel.drl.spec_ref
+         */
+        public boolean equals(Object obj) {
+            if (obj instanceof CommandEnvironment) {
+                CommandEnvironment casted_obj = (CommandEnvironment) obj;
+                boolean p0 = casted_obj.getCommandPath().equals(command);
+                boolean p1 = casted_obj.getCommandOptions().equals(options);
+                return p0 && p1;
+            }
+            return false;
+        }
+
+        /**
+         * @com.intel.drl.spec_ref
+         */
+        public int hashCode() {
+            int hc = 0;
+            if (command != null) {
+                hc = hc ^ command.hashCode();
+            }
+            if (options != null) {
+                hc = hc ^ options.hashCode();
+            }
+            return hc;
+        }
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroupDesc.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroupID.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroupID.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroupID.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroupID.java Thu May 18 13:01:22 2006
@@ -0,0 +1,83 @@
+/*
+ * Copyright 2005-2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author  Victor A. Martynov
+ * @version $Revision: 1.8.2.2 $
+ */
+package java.rmi.activation;
+
+import java.io.Serializable;
+import java.rmi.server.UID;
+
+
+/**
+ * @com.intel.drl.spec_ref
+ *
+ * @author  Victor A. Martynov
+ * @version $Revision: 1.8.2.2 $
+ */
+public class ActivationGroupID implements Serializable {
+
+    private static final long serialVersionUID = -1648432278909740833L;
+
+    private UID uid;
+
+    private ActivationSystem system;
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivationGroupID(ActivationSystem system) {
+        this.system = system;
+        uid = new UID();
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public boolean equals(Object obj) {
+        if (obj instanceof ActivationGroupID) {
+            ActivationGroupID id = (ActivationGroupID) obj;
+            return (uid.equals(id.uid) && system.equals(id.system));
+        } else {
+            return false;
+        }
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public ActivationSystem getSystem() {
+        return system;
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+     */
+    public int hashCode() {
+        return uid.hashCode();
+    }
+
+    /**
+     * @com.intel.drl.spec_ref
+
+     */
+    public String toString() {
+        return "ActivationGroupID[" + uid + "; " + system + "]";
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroupID.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroup_Stub.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroup_Stub.java?rev=407625&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroup_Stub.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroup_Stub.java Thu May 18 13:01:22 2006
@@ -0,0 +1,50 @@
+/*
+ * RMI stub class
+ * for class java.rmi.activation.ActivationGroup
+ * Compatible with stub protocol version 1.2
+ *
+ * Generated by DRL RMI Compiler (rmic).
+ *
+ * DO NOT EDIT!!!
+ * Contents subject to change without notice!
+ */
+package java.rmi.activation;
+
+
+public final class ActivationGroup_Stub extends java.rmi.server.RemoteStub
+        implements java.rmi.activation.ActivationInstantiator, java.rmi.Remote {
+
+    private static final long serialVersionUID = 2;
+
+    private static java.lang.reflect.Method $method_newInstance_0;
+
+    static {
+        try {
+            $method_newInstance_0 = java.rmi.activation.ActivationInstantiator.class.getMethod("newInstance", new java.lang.Class[] {java.rmi.activation.ActivationID.class, java.rmi.activation.ActivationDesc.class});
+        } catch (java.lang.NoSuchMethodException e) {
+            throw new java.lang.NoSuchMethodError(
+                    "Stub class initialization failed: java.rmi.activation.ActivationGroup_Stub");
+        }
+    }
+
+    public ActivationGroup_Stub(java.rmi.server.RemoteRef ref) {
+        super(ref);
+    }
+
+    // Implementation of newInstance(ActivationID, ActivationDesc)
+    public java.rmi.MarshalledObject newInstance(java.rmi.activation.ActivationID $param_ActivationID_1, java.rmi.activation.ActivationDesc $param_ActivationDesc_2)
+            throws java.rmi.activation.ActivationException, java.rmi.RemoteException {
+        try {
+            java.lang.Object $result = ref.invoke(this, $method_newInstance_0, new java.lang.Object[] {$param_ActivationID_1, $param_ActivationDesc_2}, -5274445189091581345L);
+            return ((java.rmi.MarshalledObject) $result);
+        } catch (java.lang.RuntimeException e) {
+            throw e;
+        } catch (java.rmi.RemoteException e) {
+            throw e;
+        } catch (java.rmi.activation.ActivationException e) {
+            throw e;
+        } catch (java.lang.Exception e) {
+            throw new java.rmi.UnexpectedException("Undeclared checked exception", e);
+        }
+    }
+}

Propchange: incubator/harmony/enhanced/classlib/trunk/modules/rmi3/src/common/javasrc/java/rmi/activation/ActivationGroup_Stub.java
------------------------------------------------------------------------------
    svn:eol-style = native