Showing the changes to java/pkg/java/rmi/registry (8 of 18352 files). Show all
Unified · Split
Binary file not shown.
| @@ -0,0 +1,241 @@ | |||
| 1 | /* | ||
| 2 | * Copyright (c) 1996, 2003, Oracle and/or its affiliates. All rights reserved. | ||
| 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | ||
| 4 | * | ||
| 5 | * This code is free software; you can redistribute it and/or modify it | ||
| 6 | * under the terms of the GNU General Public License version 2 only, as | ||
| 7 | * published by the Free Software Foundation. Oracle designates this | ||
| 8 | * particular file as subject to the "Classpath" exception as provided | ||
| 9 | * by Oracle in the LICENSE file that accompanied this code. | ||
| 10 | * | ||
| 11 | * This code is distributed in the hope that it will be useful, but WITHOUT | ||
| 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
| 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||
| 14 | * version 2 for more details (a copy is included in the LICENSE file that | ||
| 15 | * accompanied this code). | ||
| 16 | * | ||
| 17 | * You should have received a copy of the GNU General Public License version | ||
| 18 | * 2 along with this work; if not, write to the Free Software Foundation, | ||
| 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | ||
| 20 | * | ||
| 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA | ||
| 22 | * or visit www.oracle.com if you need additional information or have any | ||
| 23 | * questions. | ||
| 24 | */ | ||
| 25 | |||
| 26 | package java.rmi.registry; | ||
| 27 | |||
| 28 | import java.rmi.RemoteException; | ||
| 29 | import java.rmi.server.ObjID; | ||
| 30 | import java.rmi.server.RMIClientSocketFactory; | ||
| 31 | import java.rmi.server.RMIServerSocketFactory; | ||
| 32 | import java.rmi.server.RemoteRef; | ||
| 33 | import java.rmi.server.UnicastRemoteObject; | ||
| 34 | import sun.rmi.registry.RegistryImpl; | ||
| 35 | import sun.rmi.server.UnicastRef2; | ||
| 36 | import sun.rmi.server.UnicastRef; | ||
| 37 | import sun.rmi.server.Util; | ||
| 38 | import sun.rmi.transport.LiveRef; | ||
| 39 | import sun.rmi.transport.tcp.TCPEndpoint; | ||
| 40 | |||
| 41 | /** | ||
| 42 | * <code>LocateRegistry</code> is used to obtain a reference to a bootstrap | ||
| 43 | * remote object registry on a particular host (including the local host), or | ||
| 44 | * to create a remote object registry that accepts calls on a specific port. | ||
| 45 | * | ||
| 46 | * <p> Note that a <code>getRegistry</code> call does not actually make a | ||
| 47 | * connection to the remote host. It simply creates a local reference to | ||
| 48 | * the remote registry and will succeed even if no registry is running on | ||
| 49 | * the remote host. Therefore, a subsequent method invocation to a remote | ||
| 50 | * registry returned as a result of this method may fail. | ||
| 51 | * | ||
| 52 | * @author Ann Wollrath | ||
| 53 | * @author Peter Jones | ||
| 54 | * @since JDK1.1 | ||
| 55 | * @see java.rmi.registry.Registry | ||
| 56 | */ | ||
| 57 | public final class LocateRegistry { | ||
| 58 | |||
| 59 | /** | ||
| 60 | * Private constructor to disable public construction. | ||
| 61 | */ | ||
| 62 | private LocateRegistry() {} | ||
| 63 | |||
| 64 | /** | ||
| 65 | * Returns a reference to the the remote object <code>Registry</code> for | ||
| 66 | * the local host on the default registry port of 1099. | ||
| 67 | * | ||
| 68 | * @return reference (a stub) to the remote object registry | ||
| 69 | * @exception RemoteException if the reference could not be created | ||
| 70 | * @since JDK1.1 | ||
| 71 | */ | ||
| 72 | public static Registry getRegistry() | ||
| 73 | throws RemoteException | ||
| 74 | { | ||
| 75 | return getRegistry(null, Registry.REGISTRY_PORT); | ||
| 76 | } | ||
| 77 | |||
| 78 | /** | ||
| 79 | * Returns a reference to the the remote object <code>Registry</code> for | ||
| 80 | * the local host on the specified <code>port</code>. | ||
| 81 | * | ||
| 82 | * @param port port on which the registry accepts requests | ||
| 83 | * @return reference (a stub) to the remote object registry | ||
| 84 | * @exception RemoteException if the reference could not be created | ||
| 85 | * @since JDK1.1 | ||
| 86 | */ | ||
| 87 | public static Registry getRegistry(int port) | ||
| 88 | throws RemoteException | ||
| 89 | { | ||
| 90 | return getRegistry(null, port); | ||
| 91 | } | ||
| 92 | |||
| 93 | /** | ||
| 94 | * Returns a reference to the remote object <code>Registry</code> on the | ||
| 95 | * specified <code>host</code> on the default registry port of 1099. If | ||
| 96 | * <code>host</code> is <code>null</code>, the local host is used. | ||
| 97 | * | ||
| 98 | * @param host host for the remote registry | ||
| 99 | * @return reference (a stub) to the remote object registry | ||
| 100 | * @exception RemoteException if the reference could not be created | ||
| 101 | * @since JDK1.1 | ||
| 102 | */ | ||
| 103 | public static Registry getRegistry(String host) | ||
| 104 | throws RemoteException | ||
| 105 | { | ||
| 106 | return getRegistry(host, Registry.REGISTRY_PORT); | ||
| 107 | } | ||
| 108 | |||
| 109 | /** | ||
| 110 | * Returns a reference to the remote object <code>Registry</code> on the | ||
| 111 | * specified <code>host</code> and <code>port</code>. If <code>host</code> | ||
| 112 | * is <code>null</code>, the local host is used. | ||
| 113 | * | ||
| 114 | * @param host host for the remote registry | ||
| 115 | * @param port port on which the registry accepts requests | ||
| 116 | * @return reference (a stub) to the remote object registry | ||
| 117 | * @exception RemoteException if the reference could not be created | ||
| 118 | * @since JDK1.1 | ||
| 119 | */ | ||
| 120 | public static Registry getRegistry(String host, int port) | ||
| 121 | throws RemoteException | ||
| 122 | { | ||
| 123 | return getRegistry(host, port, null); | ||
| 124 | } | ||
| 125 | |||
| 126 | /** | ||
| 127 | * Returns a locally created remote reference to the remote object | ||
| 128 | * <code>Registry</code> on the specified <code>host</code> and | ||
| 129 | * <code>port</code>. Communication with this remote registry will | ||
| 130 | * use the supplied <code>RMIClientSocketFactory</code> <code>csf</code> | ||
| 131 | * to create <code>Socket</code> connections to the registry on the | ||
| 132 | * remote <code>host</code> and <code>port</code>. | ||
| 133 | * | ||
| 134 | * @param host host for the remote registry | ||
| 135 | * @param port port on which the registry accepts requests | ||
| 136 | * @param csf client-side <code>Socket</code> factory used to | ||
| 137 | * make connections to the registry. If <code>csf</code> | ||
| 138 | * is null, then the default client-side <code>Socket</code> | ||
| 139 | * factory will be used in the registry stub. | ||
| 140 | * @return reference (a stub) to the remote registry | ||
| 141 | * @exception RemoteException if the reference could not be created | ||
| 142 | * @since 1.2 | ||
| 143 | */ | ||
| 144 | public static Registry getRegistry(String host, int port, | ||
| 145 | RMIClientSocketFactory csf) | ||
| 146 | throws RemoteException | ||
| 147 | { | ||
| 148 | Registry registry = null; | ||
| 149 | |||
| 150 | if (port <= 0) | ||
| 151 | port = Registry.REGISTRY_PORT; | ||
| 152 | |||
| 153 | if (host == null || host.length() == 0) { | ||
| 154 | // If host is blank (as returned by "file:" URL in 1.0.2 used in | ||
| 155 | // java.rmi.Naming), try to convert to real local host name so | ||
| 156 | // that the RegistryImpl's checkAccess will not fail. | ||
| 157 | try { | ||
| 158 | host = java.net.InetAddress.getLocalHost().getHostAddress(); | ||
| 159 | } catch (Exception e) { | ||
| 160 | // If that failed, at least try "" (localhost) anyway... | ||
| 161 | host = ""; | ||
| 162 | } | ||
| 163 | } | ||
| 164 | |||
| 165 | /* | ||
| 166 | * Create a proxy for the registry with the given host, port, and | ||
| 167 | * client socket factory. If the supplied client socket factory is | ||
| 168 | * null, then the ref type is a UnicastRef, otherwise the ref type | ||
| 169 | * is a UnicastRef2. If the property | ||
| 170 | * java.rmi.server.ignoreStubClasses is true, then the proxy | ||
| 171 | * returned is an instance of a dynamic proxy class that implements | ||
| 172 | * the Registry interface; otherwise the proxy returned is an | ||
| 173 | * instance of the pregenerated stub class for RegistryImpl. | ||
| 174 | **/ | ||
| 175 | LiveRef liveRef = | ||
| 176 | new LiveRef(new ObjID(ObjID.REGISTRY_ID), | ||
| 177 | new TCPEndpoint(host, port, csf, null), | ||
| 178 | false); | ||
| 179 | RemoteRef ref = | ||
| 180 | (csf == null) ? new UnicastRef(liveRef) : new UnicastRef2(liveRef); | ||
| 181 | |||
| 182 | return (Registry) Util.createProxy(RegistryImpl.class, ref, false); | ||
| 183 | } | ||
| 184 | |||
| 185 | /** | ||
| 186 | * Creates and exports a <code>Registry</code> instance on the local | ||
| 187 | * host that accepts requests on the specified <code>port</code>. | ||
| 188 | * | ||
| 189 | * <p>The <code>Registry</code> instance is exported as if the static | ||
| 190 | * {@link UnicastRemoteObject#exportObject(Remote,int) | ||
| 191 | * UnicastRemoteObject.exportObject} method is invoked, passing the | ||
| 192 | * <code>Registry</code> instance and the specified <code>port</code> as | ||
| 193 | * arguments, except that the <code>Registry</code> instance is | ||
| 194 | * exported with a well-known object identifier, an {@link ObjID} | ||
| 195 | * instance constructed with the value {@link ObjID#REGISTRY_ID}. | ||
| 196 | * | ||
| 197 | * @param port the port on which the registry accepts requests | ||
| 198 | * @return the registry | ||
| 199 | * @exception RemoteException if the registry could not be exported | ||
| 200 | * @since JDK1.1 | ||
| 201 | **/ | ||
| 202 | public static Registry createRegistry(int port) throws RemoteException { | ||
| 203 | return new RegistryImpl(port); | ||
| 204 | } | ||
| 205 | |||
| 206 | /** | ||
| 207 | * Creates and exports a <code>Registry</code> instance on the local | ||
| 208 | * host that uses custom socket factories for communication with that | ||
| 209 | * instance. The registry that is created listens for incoming | ||
| 210 | * requests on the given <code>port</code> using a | ||
| 211 | * <code>ServerSocket</code> created from the supplied | ||
| 212 | * <code>RMIServerSocketFactory</code>. | ||
| 213 | * | ||
| 214 | * <p>The <code>Registry</code> instance is exported as if | ||
| 215 | * the static {@link | ||
| 216 | * UnicastRemoteObject#exportObject(Remote,int,RMIClientSocketFactory,RMIServerSocketFactory) | ||
| 217 | * UnicastRemoteObject.exportObject} method is invoked, passing the | ||
| 218 | * <code>Registry</code> instance, the specified <code>port</code>, the | ||
| 219 | * specified <code>RMIClientSocketFactory</code>, and the specified | ||
| 220 | * <code>RMIServerSocketFactory</code> as arguments, except that the | ||
| 221 | * <code>Registry</code> instance is exported with a well-known object | ||
| 222 | * identifier, an {@link ObjID} instance constructed with the value | ||
| 223 | * {@link ObjID#REGISTRY_ID}. | ||
| 224 | * | ||
| 225 | * @param port port on which the registry accepts requests | ||
| 226 | * @param csf client-side <code>Socket</code> factory used to | ||
| 227 | * make connections to the registry | ||
| 228 | * @param ssf server-side <code>ServerSocket</code> factory | ||
| 229 | * used to accept connections to the registry | ||
| 230 | * @return the registry | ||
| 231 | * @exception RemoteException if the registry could not be exported | ||
| 232 | * @since 1.2 | ||
| 233 | **/ | ||
| 234 | public static Registry createRegistry(int port, | ||
| 235 | RMIClientSocketFactory csf, | ||
| 236 | RMIServerSocketFactory ssf) | ||
| 237 | throws RemoteException | ||
| 238 | { | ||
| 239 | return new RegistryImpl(port, csf, ssf); | ||
| 240 | } | ||
| 241 | } | ||
Binary file not shown.
| @@ -0,0 +1,192 @@ | |||
| 1 | /* | ||
| 2 | * Copyright (c) 1996, 2001, Oracle and/or its affiliates. All rights reserved. | ||
| 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | ||
| 4 | * | ||
| 5 | * This code is free software; you can redistribute it and/or modify it | ||
| 6 | * under the terms of the GNU General Public License version 2 only, as | ||
| 7 | * published by the Free Software Foundation. Oracle designates this | ||
| 8 | * particular file as subject to the "Classpath" exception as provided | ||
| 9 | * by Oracle in the LICENSE file that accompanied this code. | ||
| 10 | * | ||
| 11 | * This code is distributed in the hope that it will be useful, but WITHOUT | ||
| 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
| 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||
| 14 | * version 2 for more details (a copy is included in the LICENSE file that | ||
| 15 | * accompanied this code). | ||
| 16 | * | ||
| 17 | * You should have received a copy of the GNU General Public License version | ||
| 18 | * 2 along with this work; if not, write to the Free Software Foundation, | ||
| 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | ||
| 20 | * | ||
| 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA | ||
| 22 | * or visit www.oracle.com if you need additional information or have any | ||
| 23 | * questions. | ||
| 24 | */ | ||
| 25 | package java.rmi.registry; | ||
| 26 | |||
| 27 | import java.rmi.AccessException; | ||
| 28 | import java.rmi.AlreadyBoundException; | ||
| 29 | import java.rmi.NotBoundException; | ||
| 30 | import java.rmi.Remote; | ||
| 31 | import java.rmi.RemoteException; | ||
| 32 | |||
| 33 | /** | ||
| 34 | * <code>Registry</code> is a remote interface to a simple remote | ||
| 35 | * object registry that provides methods for storing and retrieving | ||
| 36 | * remote object references bound with arbitrary string names. The | ||
| 37 | * <code>bind</code>, <code>unbind</code>, and <code>rebind</code> | ||
| 38 | * methods are used to alter the name bindings in the registry, and | ||
| 39 | * the <code>lookup</code> and <code>list</code> methods are used to | ||
| 40 | * query the current name bindings. | ||
| 41 | * | ||
| 42 | * <p>In its typical usage, a <code>Registry</code> enables RMI client | ||
| 43 | * bootstrapping: it provides a simple means for a client to obtain an | ||
| 44 | * initial reference to a remote object. Therefore, a registry's | ||
| 45 | * remote object implementation is typically exported with a | ||
| 46 | * well-known address, such as with a well-known {@link | ||
| 47 | * java.rmi.server.ObjID#REGISTRY_ID ObjID} and TCP port number | ||
| 48 | * (default is {@link #REGISTRY_PORT 1099}). | ||
| 49 | * | ||
| 50 | * <p>The {@link LocateRegistry} class provides a programmatic API for | ||
| 51 | * constructing a bootstrap reference to a <code>Registry</code> at a | ||
| 52 | * remote address (see the static <code>getRegistry</code> methods) | ||
| 53 | * and for creating and exporting a <code>Registry</code> in the | ||
| 54 | * current VM on a particular local address (see the static | ||
| 55 | * <code>createRegistry</code> methods). | ||
| 56 | * | ||
| 57 | * <p>A <code>Registry</code> implementation may choose to restrict | ||
| 58 | * access to some or all of its methods (for example, methods that | ||
| 59 | * mutate the registry's bindings may be restricted to calls | ||
| 60 | * originating from the local host). If a <code>Registry</code> | ||
| 61 | * method chooses to deny access for a given invocation, its | ||
| 62 | * implementation may throw {@link java.rmi.AccessException}, which | ||
| 63 | * (because it extends {@link java.rmi.RemoteException}) will be | ||
| 64 | * wrapped in a {@link java.rmi.ServerException} when caught by a | ||
| 65 | * remote client. | ||
| 66 | * | ||
| 67 | * <p>The names used for bindings in a <code>Registry</code> are pure | ||
| 68 | * strings, not parsed. A service which stores its remote reference | ||
| 69 | * in a <code>Registry</code> may wish to use a package name as a | ||
| 70 | * prefix in the name binding to reduce the likelihood of name | ||
| 71 | * collisions in the registry. | ||
| 72 | * | ||
| 73 | * @author Ann Wollrath | ||
| 74 | * @author Peter Jones | ||
| 75 | * @since JDK1.1 | ||
| 76 | * @see LocateRegistry | ||
| 77 | */ | ||
| 78 | public interface Registry extends Remote { | ||
| 79 | |||
| 80 | /** Well known port for registry. */ | ||
| 81 | public static final int REGISTRY_PORT = 1099; | ||
| 82 | |||
| 83 | /** | ||
| 84 | * Returns the remote reference bound to the specified | ||
| 85 | * <code>name</code> in this registry. | ||
| 86 | * | ||
| 87 | * @param name the name for the remote reference to look up | ||
| 88 | * | ||
| 89 | * @return a reference to a remote object | ||
| 90 | * | ||
| 91 | * @throws NotBoundException if <code>name</code> is not currently bound | ||
| 92 | * | ||
| 93 | * @throws RemoteException if remote communication with the | ||
| 94 | * registry failed; if exception is a <code>ServerException</code> | ||
| 95 | * containing an <code>AccessException</code>, then the registry | ||
| 96 | * denies the caller access to perform this operation | ||
| 97 | * | ||
| 98 | * @throws AccessException if this registry is local and it denies | ||
| 99 | * the caller access to perform this operation | ||
| 100 | * | ||
| 101 | * @throws NullPointerException if <code>name</code> is <code>null</code> | ||
| 102 | */ | ||
| 103 | public Remote lookup(String name) | ||
| 104 | throws RemoteException, NotBoundException, AccessException; | ||
| 105 | |||
| 106 | /** | ||
| 107 | * Binds a remote reference to the specified <code>name</code> in | ||
| 108 | * this registry. | ||
| 109 | * | ||
| 110 | * @param name the name to associate with the remote reference | ||
| 111 | * @param obj a reference to a remote object (usually a stub) | ||
| 112 | * | ||
| 113 | * @throws AlreadyBoundException if <code>name</code> is already bound | ||
| 114 | * | ||
| 115 | * @throws RemoteException if remote communication with the | ||
| 116 | * registry failed; if exception is a <code>ServerException</code> | ||
| 117 | * containing an <code>AccessException</code>, then the registry | ||
| 118 | * denies the caller access to perform this operation (if | ||
| 119 | * originating from a non-local host, for example) | ||
| 120 | * | ||
| 121 | * @throws AccessException if this registry is local and it denies | ||
| 122 | * the caller access to perform this operation | ||
| 123 | * | ||
| 124 | * @throws NullPointerException if <code>name</code> is | ||
| 125 | * <code>null</code>, or if <code>obj</code> is <code>null</code> | ||
| 126 | */ | ||
| 127 | public void bind(String name, Remote obj) | ||
| 128 | throws RemoteException, AlreadyBoundException, AccessException; | ||
| 129 | |||
| 130 | /** | ||
| 131 | * Removes the binding for the specified <code>name</code> in | ||
| 132 | * this registry. | ||
| 133 | * | ||
| 134 | * @param name the name of the binding to remove | ||
| 135 | * | ||
| 136 | * @throws NotBoundException if <code>name</code> is not currently bound | ||
| 137 | * | ||
| 138 | * @throws RemoteException if remote communication with the | ||
| 139 | * registry failed; if exception is a <code>ServerException</code> | ||
| 140 | * containing an <code>AccessException</code>, then the registry | ||
| 141 | * denies the caller access to perform this operation (if | ||
| 142 | * originating from a non-local host, for example) | ||
| 143 | * | ||
| 144 | * @throws AccessException if this registry is local and it denies | ||
| 145 | * the caller access to perform this operation | ||
| 146 | * | ||
| 147 | * @throws NullPointerException if <code>name</code> is <code>null</code> | ||
| 148 | */ | ||
| 149 | public void unbind(String name) | ||
| 150 | throws RemoteException, NotBoundException, AccessException; | ||
| 151 | |||
| 152 | /** | ||
| 153 | * Replaces the binding for the specified <code>name</code> in | ||
| 154 | * this registry with the supplied remote reference. If there is | ||
| 155 | * an existing binding for the specified <code>name</code>, it is | ||
| 156 | * discarded. | ||
| 157 | * | ||
| 158 | * @param name the name to associate with the remote reference | ||
| 159 | * @param obj a reference to a remote object (usually a stub) | ||
| 160 | * | ||
| 161 | * @throws RemoteException if remote communication with the | ||
| 162 | * registry failed; if exception is a <code>ServerException</code> | ||
| 163 | * containing an <code>AccessException</code>, then the registry | ||
| 164 | * denies the caller access to perform this operation (if | ||
| 165 | * originating from a non-local host, for example) | ||
| 166 | * | ||
| 167 | * @throws AccessException if this registry is local and it denies | ||
| 168 | * the caller access to perform this operation | ||
| 169 | * | ||
| 170 | * @throws NullPointerException if <code>name</code> is | ||
| 171 | * <code>null</code>, or if <code>obj</code> is <code>null</code> | ||
| 172 | */ | ||
| 173 | public void rebind(String name, Remote obj) | ||
| 174 | throws RemoteException, AccessException; | ||
| 175 | |||
| 176 | /** | ||
| 177 | * Returns an array of the names bound in this registry. The | ||
| 178 | * array will contain a snapshot of the names bound in this | ||
| 179 | * registry at the time of the given invocation of this method. | ||
| 180 | * | ||
| 181 | * @return an array of the names bound in this registry | ||
| 182 | * | ||
| 183 | * @throws RemoteException if remote communication with the | ||
| 184 | * registry failed; if exception is a <code>ServerException</code> | ||
| 185 | * containing an <code>AccessException</code>, then the registry | ||
| 186 | * denies the caller access to perform this operation | ||
| 187 | * | ||
| 188 | * @throws AccessException if this registry is local and it denies | ||
| 189 | * the caller access to perform this operation | ||
| 190 | */ | ||
| 191 | public String[] list() throws RemoteException, AccessException; | ||
| 192 | } | ||
Binary file not shown.
| @@ -0,0 +1,73 @@ | |||
| 1 | /* | ||
| 2 | * Copyright (c) 1997, 2004, Oracle and/or its affiliates. All rights reserved. | ||
| 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | ||
| 4 | * | ||
| 5 | * This code is free software; you can redistribute it and/or modify it | ||
| 6 | * under the terms of the GNU General Public License version 2 only, as | ||
| 7 | * published by the Free Software Foundation. Oracle designates this | ||
| 8 | * particular file as subject to the "Classpath" exception as provided | ||
| 9 | * by Oracle in the LICENSE file that accompanied this code. | ||
| 10 | * | ||
| 11 | * This code is distributed in the hope that it will be useful, but WITHOUT | ||
| 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
| 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||
| 14 | * version 2 for more details (a copy is included in the LICENSE file that | ||
| 15 | * accompanied this code). | ||
| 16 | * | ||
| 17 | * You should have received a copy of the GNU General Public License version | ||
| 18 | * 2 along with this work; if not, write to the Free Software Foundation, | ||
| 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | ||
| 20 | * | ||
| 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA | ||
| 22 | * or visit www.oracle.com if you need additional information or have any | ||
| 23 | * questions. | ||
| 24 | */ | ||
| 25 | |||
| 26 | package java.rmi.registry; | ||
| 27 | |||
| 28 | import java.rmi.RemoteException; | ||
| 29 | import java.rmi.UnknownHostException; | ||
| 30 | |||
| 31 | /** | ||
| 32 | * <code>RegistryHandler</code> is an interface used internally by the RMI | ||
| 33 | * runtime in previous implementation versions. It should never be accessed | ||
| 34 | * by application code. | ||
| 35 | * | ||
| 36 | * @author Ann Wollrath | ||
| 37 | * @since JDK1.1 | ||
| 38 | * @deprecated no replacement | ||
| 39 | */ | ||
| 40 | @Deprecated | ||
| 41 | public interface RegistryHandler { | ||
| 42 | |||
| 43 | /** | ||
| 44 | * Returns a "stub" for contacting a remote registry | ||
| 45 | * on the specified host and port. | ||
| 46 | * | ||
| 47 | * @deprecated no replacement. As of the Java 2 platform v1.2, RMI no | ||
| 48 | * longer uses the <code>RegistryHandler</code> to obtain the registry's | ||
| 49 | * stub. | ||
| 50 | * @param host name of remote registry host | ||
| 51 | * @param port remote registry port | ||
| 52 | * @return remote registry stub | ||
| 53 | * @throws RemoteException if a remote error occurs | ||
| 54 | * @throws UnknownHostException if unable to resolve given hostname | ||
| 55 | */ | ||
| 56 | @Deprecated | ||
| 57 | Registry registryStub(String host, int port) | ||
| 58 | throws RemoteException, UnknownHostException; | ||
| 59 | |||
| 60 | /** | ||
| 61 | * Constructs and exports a Registry on the specified port. | ||
| 62 | * The port must be non-zero. | ||
| 63 | * | ||
| 64 | * @deprecated no replacement. As of the Java 2 platform v1.2, RMI no | ||
| 65 | * longer uses the <code>RegistryHandler</code> to obtain the registry's | ||
| 66 | * implementation. | ||
| 67 | * @param port port to export registry on | ||
| 68 | * @return registry stub | ||
| 69 | * @throws RemoteException if a remote error occurs | ||
| 70 | */ | ||
| 71 | @Deprecated | ||
| 72 | Registry registryImpl(int port) throws RemoteException; | ||
| 73 | } | ||
| @@ -0,0 +1,10 @@ | |||
| 1 | <../../../../../mkconfig | ||
| 2 | |||
| 3 | TARG=\ | ||
| 4 | LocateRegistry.dis\ | ||
| 5 | Registry.dis\ | ||
| 6 | RegistryHandler.dis\ | ||
| 7 | |||
| 8 | DISBIN=$ROOT/java/dis/java/java/java/rmi/registry | ||
| 9 | |||
| 10 | <$ROOT/mkfiles/mkjava | ||
| @@ -0,0 +1,57 @@ | |||
| 1 | <!-- | ||
| 2 | Copyright (c) 1998, Oracle and/or its affiliates. All rights reserved. | ||
| 3 | DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | ||
| 4 | |||
| 5 | This code is free software; you can redistribute it and/or modify it | ||
| 6 | under the terms of the GNU General Public License version 2 only, as | ||
| 7 | published by the Free Software Foundation. Oracle designates this | ||
| 8 | particular file as subject to the "Classpath" exception as provided | ||
| 9 | by Oracle in the LICENSE file that accompanied this code. | ||
| 10 | |||
| 11 | This code is distributed in the hope that it will be useful, but WITHOUT | ||
| 12 | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
| 13 | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||
| 14 | version 2 for more details (a copy is included in the LICENSE file that | ||
| 15 | accompanied this code). | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License version | ||
| 18 | 2 along with this work; if not, write to the Free Software Foundation, | ||
| 19 | Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | ||
| 20 | |||
| 21 | Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA | ||
| 22 | or visit www.oracle.com if you need additional information or have any | ||
| 23 | questions. | ||
| 24 | --> | ||
| 25 | |||
| 26 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> | ||
| 27 | <html> | ||
| 28 | </head> | ||
| 29 | <body bgcolor="white"> | ||
| 30 | |||
| 31 | Provides a class and two interfaces for the RMI registry. | ||
| 32 | A registry is a remote object that maps names to remote objects. A | ||
| 33 | server registers its remote objects with the registry so that they can | ||
| 34 | be looked up. When an object wants to invoke a method on a remote | ||
| 35 | object, it must first lookup the remote object using its name. The | ||
| 36 | registry returns to the calling object a reference to the remote | ||
| 37 | object, using which a remote method can be invoked. | ||
| 38 | |||
| 39 | <!-- | ||
| 40 | <h2>Package Specification</h2> | ||
| 41 | |||
| 42 | ##### FILL IN ANY SPECS NEEDED BY JAVA COMPATIBILITY KIT ##### | ||
| 43 | <ul> | ||
| 44 | <li><a href="">##### REFER TO ANY FRAMEMAKER SPECIFICATION HERE #####</a> | ||
| 45 | </ul> | ||
| 46 | |||
| 47 | <h2>Related Documentation</h2> | ||
| 48 | |||
| 49 | For overviews, tutorials, examples, guides, and tool documentation, please see: | ||
| 50 | <ul> | ||
| 51 | <li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a> | ||
| 52 | </ul> | ||
| 53 | --> | ||
| 54 | |||
| 55 | @since JDK1.1 | ||
| 56 | </body> | ||
| 57 | </html> | ||