Class RMIJRMPServerImpl
- java.lang.Object
-
- javax.management.remote.rmi.RMIServerImpl
-
- javax.management.remote.rmi.RMIJRMPServerImpl
- All Implemented Interfaces:
-
Closeable
,AutoCloseable
,Remote
,RMIServer
public class RMIJRMPServerImpl extends RMIServerImpl
An RMIServer
object that is exported through JRMP and that creates client connections as RMI objects exported through JRMP. User code does not usually reference this class directly.
- Since:
- 1.5
- See Also:
RMIServerImpl
Constructor Summary
Constructor | Description |
---|---|
RMIJRMPServerImpl(int port,
RMIClientSocketFactory csf,
RMIServerSocketFactory ssf,
Map<String,?> env) | Creates a new |
Method Summary
Modifier and Type | Method | Description |
---|---|---|
protected void | closeServer() | Called by |
protected RMIConnection | makeClient(String connectionId,
Subject subject) | Creates a new client connection as an RMI object exported through JRMP. |
Remote | toStub() | Returns a serializable stub for this |
Methods declared in class javax.management.remote.rmi.RMIServerImpl
clientClosed, close, closeClient, export, getDefaultClassLoader, getMBeanServer, getProtocol, newClient, setDefaultClassLoader, setMBeanServer
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods declared in interface javax.management.remote.rmi.RMIServer
getVersion
Constructor Detail
RMIJRMPServerImpl
public RMIJRMPServerImpl(int port, RMIClientSocketFactory csf, RMIServerSocketFactory ssf, Map<String,?> env) throws IOException
Creates a new RMIServer
object that will be exported on the given port using the given socket factories.
- Parameters:
-
port
- the port on which this object and theRMIConnectionImpl
objects it creates will be exported. Can be zero, to indicate any available port. -
csf
- the client socket factory for the created RMI objects. Can be null. -
ssf
- the server socket factory for the created RMI objects. Can be null. -
env
- the environment map. Can be null. - Throws:
-
IOException
- if theRMIServer
object cannot be created. -
IllegalArgumentException
- ifport
is negative.
Method Detail
toStub
public Remote toStub() throws IOException
Returns a serializable stub for this RMIServer
object.
- Specified by:
-
toStub
in classRMIServerImpl
- Returns:
- a serializable stub.
- Throws:
-
IOException
- if the stub cannot be obtained - e.g the RMIJRMPServerImpl has not been exported yet.
makeClient
protected RMIConnection makeClient(String connectionId, Subject subject) throws IOException
Creates a new client connection as an RMI object exported through JRMP. The port and socket factories for the new RMIConnection
object are the ones supplied to the RMIJRMPServerImpl
constructor.
- Specified by:
-
makeClient
in classRMIServerImpl
- Parameters:
-
connectionId
- the ID of the new connection. Every connection opened by this connector server will have a different id. The behavior is unspecified if this parameter is null. -
subject
- the authenticated subject. Can be null. - Returns:
- the newly-created
RMIConnection
. - Throws:
-
IOException
- if the newRMIConnection
object cannot be created or exported.
closeServer
protected void closeServer() throws IOException
Called by RMIServerImpl.close()
to close the connector server by unexporting this object. After returning from this method, the connector server must not accept any new connections.
- Specified by:
-
closeServer
in classRMIServerImpl
- Throws:
-
IOException
- if the attempt to close the connector server failed.