java.rmi.registry

Interface Registry

  • All Superinterfaces:
    Remote

    public interface Registry
    extends Remote
    Registry is a remote interface to a simple remote object registry that provides methods for storing and retrieving remote object references bound with arbitrary string names. The bind, unbind, and rebind methods are used to alter the name bindings in the registry, and the lookup and list methods are used to query the current name bindings.

    In its typical usage, a Registry enables RMI client bootstrapping: it provides a simple means for a client to obtain an initial reference to a remote object. Therefore, a registry's remote object implementation is typically exported with a well-known address, such as with a well-known ObjID and TCP port number (default is 1099).

    The LocateRegistry class provides a programmatic API for constructing a bootstrap reference to a Registry at a remote address (see the static getRegistry methods) and for creating and exporting a Registry in the current VM on a particular local address (see the static createRegistry methods).

    A Registry implementation may choose to restrict access to some or all of its methods (for example, methods that mutate the registry's bindings may be restricted to calls originating from the local host). If a Registry method chooses to deny access for a given invocation, its implementation may throw AccessException, which (because it extends RemoteException) will be wrapped in a ServerException when caught by a remote client.

    The names used for bindings in a Registry are pure strings, not parsed. A service which stores its remote reference in a Registry may wish to use a package name as a prefix in the name binding to reduce the likelihood of name collisions in the registry.

    Since:
    JDK1.1
    See Also:
    LocateRegistry
    • Field Detail

      • REGISTRY_PORT

        static final int REGISTRY_PORT
        Well known port for registry.
        See Also:
        Constant Field Values
    • Method Detail

      • lookup

        Remote lookup(String name)
                      throws RemoteException,
                             NotBoundException,
                             AccessException
        Returns the remote reference bound to the specified name in this registry.
        Parameters:
        name - the name for the remote reference to look up
        Returns:
        a reference to a remote object
        Throws:
        NotBoundException - if name is not currently bound
        RemoteException - if remote communication with the registry failed; if exception is a ServerException containing an AccessException, then the registry denies the caller access to perform this operation
        AccessException - if this registry is local and it denies the caller access to perform this operation
        NullPointerException - if name is null
      • bind

        void bind(String name,
                Remote obj)
                  throws RemoteException,
                         AlreadyBoundException,
                         AccessException
        Binds a remote reference to the specified name in this registry.
        Parameters:
        name - the name to associate with the remote reference
        obj - a reference to a remote object (usually a stub)
        Throws:
        AlreadyBoundException - if name is already bound
        RemoteException - if remote communication with the registry failed; if exception is a ServerException containing an AccessException, then the registry denies the caller access to perform this operation (if originating from a non-local host, for example)
        AccessException - if this registry is local and it denies the caller access to perform this operation
        NullPointerException - if name is null, or if obj is null
      • unbind

        void unbind(String name)
                    throws RemoteException,
                           NotBoundException,
                           AccessException
        Removes the binding for the specified name in this registry.
        Parameters:
        name - the name of the binding to remove
        Throws:
        NotBoundException - if name is not currently bound
        RemoteException - if remote communication with the registry failed; if exception is a ServerException containing an AccessException, then the registry denies the caller access to perform this operation (if originating from a non-local host, for example)
        AccessException - if this registry is local and it denies the caller access to perform this operation
        NullPointerException - if name is null
      • rebind

        void rebind(String name,
                  Remote obj)
                    throws RemoteException,
                           AccessException
        Replaces the binding for the specified name in this registry with the supplied remote reference. If there is an existing binding for the specified name, it is discarded.
        Parameters:
        name - the name to associate with the remote reference
        obj - a reference to a remote object (usually a stub)
        Throws:
        RemoteException - if remote communication with the registry failed; if exception is a ServerException containing an AccessException, then the registry denies the caller access to perform this operation (if originating from a non-local host, for example)
        AccessException - if this registry is local and it denies the caller access to perform this operation
        NullPointerException - if name is null, or if obj is null
      • list

        String[] list()
                      throws RemoteException,
                             AccessException
        Returns an array of the names bound in this registry. The array will contain a snapshot of the names bound in this registry at the time of the given invocation of this method.
        Returns:
        an array of the names bound in this registry
        Throws:
        RemoteException - if remote communication with the registry failed; if exception is a ServerException containing an AccessException, then the registry denies the caller access to perform this operation
        AccessException - if this registry is local and it denies the caller access to perform this operation

Document created the 11/06/2005, last modified the 04/03/2020
Source of the printed document:https://www.gaudry.be/en/java-api-rf-java/rmi/registry/registry.html

The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.

References

  1. View the html document Language of the document:fr Manuel PHP : https://docs.oracle.com

These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.

Contents Haut