- java.lang.Object
-
- javax.rmi.ssl.SslRMIClientSocketFactory
-
- All Implemented Interfaces:
-
Serializable,RMIClientSocketFactory
public class SslRMIClientSocketFactory extends Object implements RMIClientSocketFactory, Serializable
RMI运行时使用
SslRMIClientSocketFactory实例,以便通过SSL获取RMI调用的客户端套接字。此类通过安全套接字层(SSL)或传输层安全(TLS)协议实现
RMIClientSocketFactory。此类使用默认的
SSLSocketFactory创建SSL套接字(请参阅SSLSocketFactory.getDefault())。 该类的所有实例在功能上相当。 特别地,当服务器需要客户端认证时,它们都共享相同的信任库,同样的密钥库。 可以通过覆盖createSocket(String,int)方法在子类中修改此行为; 在这种情况下,也可能需要覆盖equals和hashCode。如果指定了系统属性
javax.rmi.ssl.client.enabledCipherSuites,则createSocket(String,int)方法将在返回套接字之前调用SSLSocket.setEnabledCipherSuites(String[])。 该系统属性的值是一个字符串,是要启用的SSL / TLS密码套件的逗号分隔列表。如果指定了系统属性
javax.rmi.ssl.client.enabledProtocols,则createSocket(String,int)方法将在返回套接字之前调用SSLSocket.setEnabledProtocols(String[])。 此系统属性的值是一个字符串,是一个逗号分隔的SSL / TLS协议版本列表。- 从以下版本开始:
- 1.5
- 另请参见:
-
SSLSocketFactory,SslRMIServerSocketFactory, Serialized Form
-
-
构造方法摘要
构造方法 Constructor 描述 SslRMIClientSocketFactory()创建一个新的SslRMIClientSocketFactory。
-
-
-
方法详细信息
-
createSocket
public Socket createSocket(String host, int port) throws IOException
创建一个SSL套接字。
如果指定了系统属性
javax.rmi.ssl.client.enabledCipherSuites,则此方法将在返回套接字之前调用SSLSocket.setEnabledCipherSuites(String[])。 该系统属性的值是一个字符串,是要启用的SSL / TLS密码套件的逗号分隔列表。如果指定了系统属性
javax.rmi.ssl.client.enabledProtocols,则此方法将在返回套接字之前调用SSLSocket.setEnabledProtocols(String[])。 此系统属性的值是一个字符串,是一个逗号分隔的SSL / TLS协议版本列表。- Specified by:
-
createSocket在接口RMIClientSocketFactory - 参数
-
host- 主机名 -
port- 端口号 - 结果
- 一个连接到指定主机和端口的套接字。
- 异常
-
IOException- 如果套接字创建期间发生I / O错误
-
equals
public boolean equals(Object obj)
指示一些其他对象是否等于此。
因为这个类的所有实例在功能上是等同的(它们都使用默认的
SSLSocketFactory),所以这个方法只需返回this.getClass().equals(obj.getClass())。一个子类应该覆盖这个方法(以及
hashCode()),如果它的实例并不都在功能上等同。- 重写:
-
equals在Object - 参数
-
obj- 用于比较的参考对象。 - 结果
-
true如果该对象与obj参数相同; 否则为false。 - 另请参见:
-
Object.hashCode(),HashMap
-
hashCode
public int hashCode()
返回此
SslRMIClientSocketFactory的哈希码值。- 重写:
-
hashCode在Object - 结果
-
这个
SslRMIClientSocketFactory的哈希码值。 - 另请参见:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
-
-