Package org.jcsp.net.tcpip
Class TCPIPNodeFactory
java.lang.Object
org.jcsp.net.tcpip.TCPIPNodeFactory
- All Implemented Interfaces:
Serializable
,NodeFactory
Default factory for simple initialisations using the TCPIPv4 protocol package.
Other constructors can be used to specify a particular CNS server. The default behaviour will extract a CNS server from the system property "org.jcsp.tcpip.DefaultCNSServer" with the server specified as a name or IP address with optional port number.
If built with 1.4 or higher the user preferences will also be checked but only if a runtime supporting the preferences is available. If not present the system preferences will then be checked.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final NodeAddressID
Address of the CNS server.private int
Port number to use for the local link server.private SecurityService
Optional security service to install. -
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor, connecting to the local host on the default CNS port or to a host name in the system properties.TCPIPNodeFactory
(String cnsServer) Connect to the named host on the default CNS port.TCPIPNodeFactory
(String cnsServerAddress, int cnsServerPort) Connect to a named host on a specific port. -
Method Summary
Modifier and TypeMethodDescriptionprivate NodeAddressID
Split the server string into a server and port component on the : character.private NodeAddressID
Construct the server address, assuming the local host if none is specified.private String
This code was moved into this method from the constructor below in the hope that code would compile on 1.4 and still run on 1.3 and 1.2,initNode
(Node node, Node.Attributes attribs) Initialise the node to listen on all local addresses, and start a CNS service.static NodeFactory
Constructs an instance of this class.void
setLocalPort
(int port) Sets the port number that should be used.void
setSecurityAuthority
(SecurityService security) Sets the security service to be used.
-
Field Details
-
cnsServer
Address of the CNS server. -
localPort
private int localPortPort number to use for the local link server. By default will be system assigned. Call setLocalPort prior to calling Node.init () to set a specific value. -
security
Optional security service to install.
-
-
Constructor Details
-
TCPIPNodeFactory
public TCPIPNodeFactory()Default constructor, connecting to the local host on the default CNS port or to a host name in the system properties. The host name should be specified as name:port or just the host name to use the default CNS port. -
TCPIPNodeFactory
Connect to the named host on the default CNS port. If the server name is given asnull
then the CNS service will not be loaded.- Parameters:
cnsServer
- name of server
-
TCPIPNodeFactory
Connect to a named host on a specific port.- Parameters:
cnsServerAddress
- name of the servercnsServerPort
- port to connect to
-
-
Method Details
-
instantiate
Constructs an instance of this class. This method is provided so that a later implementation can opt to pass construction to an alternative under certain conditions. This is for use by the infrastructure only. Users should call the public constructors. -
construct
Construct the server address, assuming the local host if none is specified.- Parameters:
cnsServerAddress
- address of CNS server or null to use the local host.cnsServerPort
- port number
-
construct
Split the server string into a server and port component on the : character. If none is present the default port is assumed and the request passed to the otherconstruct
method.- Parameters:
cnsServer
- server with optional port number
-
getServerFromPrefs
This code was moved into this method from the constructor below in the hope that code would compile on 1.4 and still run on 1.3 and 1.2, -
initNode
Initialise the node to listen on all local addresses, and start a CNS service.- Specified by:
initNode
in interfaceNodeFactory
- Parameters:
node
- the node to be initializedattribs
- access to the restricted node attributes- Throws:
NodeInitFailedException
- if a problem occurs
-
setLocalPort
public void setLocalPort(int port) Sets the port number that should be used. If this is not called then the system will allocate an arbitrary port.- Parameters:
port
- the port number, 0 invalid input: '<'= port invalid input: '<' 65536.
-
setSecurityAuthority
Sets the security service to be used.- Parameters:
security
- the new security authority.
-