[
http://jira.jboss.com/jira/browse/JBREM-521?page=all ]
Ron Sigal closed JBREM-521.
---------------------------
Resolution: Done
Upon further consideration, it seems that socket factory and server socket factory
configuration on the client side is already sufficiently flexible. The following options
are available:
For SocketFactory's, there are seven means of configuration:
1) Call Client.setSocketFactory().
2) Get the ClientInvoker from the Client and call ClientInvoker.setSocketFactory().
3) Put a constructed SocketFactory in a configuration Map, using key
Remoting.CUSTOM_SOCKET_FACTORY (actual value "customSocketFactory", and pass the
Map to one of the Client constructors.
4) Put the class name of a SocketFactory in a configuration Map, using key
Remoting.SOCKET_FACTORY_NAME (actual value "socketFactory", and pass the Map to
one of the Client constructors. In this case, an instance of the class will be created
using the default constructor.
5) Put a set of SSL parameters, using the keys in
org.jboss.remoting.security.SSLSocketBuilder, in a configuration Map and pass the Map to
one of the Client constructors. These will be used by SSLSocketBuilder to create a
CustomSSLSocketFactory.
6) Configure an appropriate set of SSL system properties and use one of the SSL transports
(https, sslbisocket, sslrmi, or sslsocket). The properties will be used to create a
default SSLSocketFactory.
7) Use one of the non-SSL transports and do nothing. A default SocketFactory will be
constructed.
These methods are essentially in descending order of precedence. Methods 1) and 2) have
equal precedence, and the last one to be used prior to calling Client.connect() will
determine the SocketFactory that gets used. Otherwise, if methods 3) and 6), for example,
are both used, the factory passed in method 3) will prevail.
For ServerSocketFactory's used by callback Connectors, there are also seven means of
configuration, though the list is somewhat different in this case:
1) Put a constructed ServerSocketFactory in a configuration Map, using key
Remoting.CUSTOM_SERVER_SOCKET_FACTORY (actual value "customServerSocketFactory",
and pass the Map to one of the Client constructors.
2) Pur the classname of a ServerSocketFactory in a metadata map, using key
ServerInvoker.SERVER_SOCKET_FACTORY (actual value "serverSocketFactory") and
pass the map to Client.addListener(). In this case, an instance of the class will be
created using the default constructor.
3) Pur the classname of a ServerSocketFactory in a configuration map, using key
ServerInvoker.SERVER_SOCKET_FACTORY (actual value "serverSocketFactory") and
pass the map to one of the Client constructors. In this case, an instance of the class
will be created using the default constructor.
4) Put a set of SSL parameters, using the keys in
org.jboss.remoting.security.SSLSocketBuilder, in a metadata Map and pass the Map to
Client.addListener(). These will be used by SSLSocketBuilder to create a
CustomSSLServerSocketFactory.
5) Put a set of SSL parameters, using the keys in
org.jboss.remoting.security.SSLSocketBuilder, in a configuration Map and pass the Map to
one of the Client constructors. These will be used by SSLSocketBuilder to create a
CustomSSLSocketFactory.
6) Configure an appropriate set of SSL system properties and use one of the SSL transports
(https, sslbisocket, sslrmi, or sslsocket). The properties will be used to create a
default SSLServerSocketFactory.
7) Use one of the non-SSL transports and do nothing. A default ServerSocketFactory will be
constructed..
Again, these are in descending order of precedence.
Organize configuration of client side socket/server socket factories
and server side socket/server socket factories.
--------------------------------------------------------------------------------------------------------------------
Key: JBREM-521
URL:
http://jira.jboss.com/jira/browse/JBREM-521
Project: JBoss Remoting
Issue Type: Task
Security Level: Public(Everyone can see)
Affects Versions: 2.2.0.Alpha3 (Bluto)
Reporter: Ron Sigal
Assigned To: Ron Sigal
Fix For: 2.4.0.CR1 (Pinto)
JBREM-520 concerns organizing configuration of socket factories and sever socket
factories in the context of a Connector. This issue concerns the more general problem of
organizing the configuration of factories in the contexts of both Clients and Connectors.
There are two aspects of configuration through the Client:
1) configuration of socket factories used by client invokers, and
2) configuration of server socket factories used by server invokers in callback
Connectors created by calls to Client.addListener().
and these need to be aligned with the two aspects of configuration through the
Connector:
1) configuration of server socket factories used by server invokers, and
2) configuration of socket factories used by callback client invokers created on the
server side in response to calls to Client.addListener().
For example, there should be a Client.setServerInvoker() method.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira