public class RMISocketFactoryImpl extends java.rmi.server.RMISocketFactory
Modifier and Type | Field and Description |
---|---|
private int |
anonymousPort |
private java.util.Map |
clientMap |
private javax.net.SocketFactory |
defaultClient |
private java.lang.String |
localBindAddress |
private static LogWrapper |
log |
private javax.net.SocketFactory |
plainClient |
static java.lang.String |
RMI_HOSTNAME_KEY |
private java.util.Map |
serverSockets |
private javax.net.ServerSocketFactory |
sslServer |
Constructor and Description |
---|
RMISocketFactoryImpl() |
RMISocketFactoryImpl(boolean createDefaultServer) |
Modifier and Type | Method and Description |
---|---|
java.net.ServerSocket |
createServerSocket(int port) |
java.net.Socket |
createSocket(java.lang.String host,
int port) |
javax.net.SocketFactory |
getClient(java.lang.String host) |
javax.net.SocketFactory |
getDefaultClient() |
static java.lang.String |
getMyDefaultIP() |
static java.util.SortedSet |
getMyInternetFacingIPs() |
javax.net.ServerSocketFactory |
getServer() |
private java.util.Set |
hostnamePossibilities(java.lang.String host) |
void |
removeClient(javax.net.SocketFactory sf) |
void |
removeClient(java.lang.String host) |
void |
setAnonymousPort(int port) |
void |
setClient(java.lang.String host,
javax.net.SocketFactory f) |
void |
setDefaultClient(javax.net.SocketFactory f) |
void |
setLocalBindAddress(java.lang.String localBindAddress) |
void |
setServer(javax.net.ServerSocketFactory f) |
private void |
trustEachOther(SSLClient client,
SSLServer server) |
private void |
trustOurself() |
public static final java.lang.String RMI_HOSTNAME_KEY
private static final LogWrapper log
private volatile javax.net.SocketFactory defaultClient
private volatile javax.net.ServerSocketFactory sslServer
private volatile java.lang.String localBindAddress
private volatile int anonymousPort
private java.util.Map clientMap
private java.util.Map serverSockets
private final javax.net.SocketFactory plainClient
public RMISocketFactoryImpl() throws java.security.GeneralSecurityException, java.io.IOException
java.security.GeneralSecurityException
java.io.IOException
public RMISocketFactoryImpl(boolean createDefaultServer) throws java.security.GeneralSecurityException, java.io.IOException
createDefaultServer
- If false, then we only set the default
client, and the default server is set to null.
If true, then a default server is also created.java.security.GeneralSecurityException
- bad thingsjava.io.IOException
- bad thingspublic void setServer(javax.net.ServerSocketFactory f) throws java.security.GeneralSecurityException, java.io.IOException
java.security.GeneralSecurityException
java.io.IOException
public void setLocalBindAddress(java.lang.String localBindAddress)
public void setAnonymousPort(int port)
public void setDefaultClient(javax.net.SocketFactory f) throws java.security.GeneralSecurityException, java.io.IOException
java.security.GeneralSecurityException
java.io.IOException
public void setClient(java.lang.String host, javax.net.SocketFactory f) throws java.security.GeneralSecurityException, java.io.IOException
java.security.GeneralSecurityException
java.io.IOException
public void removeClient(java.lang.String host)
public void removeClient(javax.net.SocketFactory sf)
private java.util.Set hostnamePossibilities(java.lang.String host)
private void trustOurself() throws java.security.GeneralSecurityException, java.io.IOException
java.security.GeneralSecurityException
java.io.IOException
private void trustEachOther(SSLClient client, SSLServer server) throws java.security.GeneralSecurityException, java.io.IOException
java.security.GeneralSecurityException
java.io.IOException
public javax.net.ServerSocketFactory getServer()
public javax.net.SocketFactory getDefaultClient()
public javax.net.SocketFactory getClient(java.lang.String host)
public java.net.ServerSocket createServerSocket(int port) throws java.io.IOException
createServerSocket
in interface java.rmi.server.RMIServerSocketFactory
createServerSocket
in class java.rmi.server.RMISocketFactory
java.io.IOException
public java.net.Socket createSocket(java.lang.String host, int port) throws java.io.IOException
createSocket
in interface java.rmi.server.RMIClientSocketFactory
createSocket
in class java.rmi.server.RMISocketFactory
java.io.IOException
public static java.lang.String getMyDefaultIP()
public static java.util.SortedSet getMyInternetFacingIPs() throws java.net.SocketException
java.net.SocketException