- All Known Subinterfaces:
EntityServerConfiguration
public interface ServerConfiguration
Configuration values for a
Server
.-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic interface
A Builder for ServerConfiguration -
Field Summary
Modifier and TypeFieldDescriptionstatic final PropertyValue<Integer>
The port on which the server should export the remote admin interface
Value type: Integer
Default value: 0 (admin not exported)static final PropertyValue<String>
Specifies a username:password combination representing the server admin user
Example: scott:tiger
Default value: nonestatic final PropertyValue<String>
A comma separated list of auxiliary server factories, providing servers to run alongside this Server
Those must extendAuxiliaryServerFactory
.
Value type: String
Default value: nonestatic final PropertyValue<String>
The rmi ssl keystore to use on the classpath, this will be resolved to a temporary file and set as the javax.net.ssl.keyStore system property on server start
Value type: String Default value: nullstatic final PropertyValue<Integer>
Specifies the interval between server connection maintenance runs, in milliseconds.
Value type: Integer
Default value: 30_000ms (30 seconds)static final int
The default connection maintenance interval in milliseconds.static final int
The default idle connection timeout in milliseconds.static final PropertyValue<Integer>
Specifies the default idle client connection timeout in milliseconds.static final String
The system property key for specifying a ssl keystorestatic final String
The system property key for specifying a ssl keystore passwordstatic final PropertyValue<String>
The rmi ssl keystore to use
Value type: String Default value: nullstatic final PropertyValue<String>
The rmi ssl keystore password to use
Value type: String Default value: nullstatic final String
Localhoststatic final PropertyValue<Integer>
The port on which to locate the server registry
Value type: Integer
Default value:Registry.REGISTRY_PORT
(1099)static final PropertyValue<String>
Specifies the rmi server hostname
Note that this is the standard Java property 'java.rmi.server.hostname'
Value type: String
Default value: localhoststatic final PropertyValue<Boolean>
If true then the serialization whitelist specified bySERIALIZATION_FILTER_WHITELIST
is populated with the names of all deserialized classes on server shutdown.static final PropertyValue<String>
The serialization whitelist file to use if anystatic final PropertyValue<String>
Specifies the prefix used when exporting/looking up the Codion server
Value type: String
Default value: Codion Serverstatic final PropertyValue<Integer>
The port on which the server is made available to clients.
If specified on the client side, the client will only connect to a server running on this port, use -1 or no value if the client should connect to any available server
Value type: Integer
Default value: -1static final PropertyValue<Boolean>
Specifies whether the server should establish connections using a secure sockets layer, true (on) or false (off)
Value type: Boolean
Default value: true -
Method Summary
Modifier and TypeMethodDescriptionint
static <B extends ServerConfiguration.Builder<B>>
ServerConfiguration.Builder<B>builder
(int serverPort) static <B extends ServerConfiguration.Builder<B>>
ServerConfiguration.Builder<B>builder
(int serverPort, int registryPort) static <B extends ServerConfiguration.Builder<B>>
ServerConfiguration.Builder<B>Returns a Builder initialized with values from system properties.int
int
port()
int
boolean
boolean
-
Field Details
-
DEFAULT_IDLE_CONNECTION_TIMEOUT
static final int DEFAULT_IDLE_CONNECTION_TIMEOUTThe default idle connection timeout in milliseconds.- See Also:
-
DEFAULT_CONNECTION_MAINTENANCE_INTERVAL
static final int DEFAULT_CONNECTION_MAINTENANCE_INTERVALThe default connection maintenance interval in milliseconds.- See Also:
-
JAVAX_NET_KEYSTORE
The system property key for specifying a ssl keystore- See Also:
-
JAVAX_NET_KEYSTORE_PASSWORD
The system property key for specifying a ssl keystore password- See Also:
-
LOCALHOST
Localhost- See Also:
-
RMI_SERVER_HOSTNAME
Specifies the rmi server hostname
Note that this is the standard Java property 'java.rmi.server.hostname'
Value type: String
Default value: localhost -
SERVER_NAME_PREFIX
Specifies the prefix used when exporting/looking up the Codion server
Value type: String
Default value: Codion Server -
SERVER_PORT
The port on which the server is made available to clients.
If specified on the client side, the client will only connect to a server running on this port, use -1 or no value if the client should connect to any available server
Value type: Integer
Default value: -1 -
REGISTRY_PORT
The port on which to locate the server registry
Value type: Integer
Default value:Registry.REGISTRY_PORT
(1099) -
CLASSPATH_KEYSTORE
The rmi ssl keystore to use on the classpath, this will be resolved to a temporary file and set as the javax.net.ssl.keyStore system property on server start
Value type: String Default value: null -
KEYSTORE
The rmi ssl keystore to use
Value type: String Default value: null- See Also:
-
KEYSTORE_PASSWORD
The rmi ssl keystore password to use
Value type: String Default value: null -
ADMIN_PORT
The port on which the server should export the remote admin interface
Value type: Integer
Default value: 0 (admin not exported) -
ADMIN_USER
Specifies a username:password combination representing the server admin user
Example: scott:tiger
Default value: none -
SSL_ENABLED
Specifies whether the server should establish connections using a secure sockets layer, true (on) or false (off)
Value type: Boolean
Default value: true -
IDLE_CONNECTION_TIMEOUT
Specifies the default idle client connection timeout in milliseconds. Value type: Integer
Default value: 120.000ms (2 minutes) -
AUXILIARY_SERVER_FACTORY_CLASS_NAMES
A comma separated list of auxiliary server factories, providing servers to run alongside this Server
Those must extendAuxiliaryServerFactory
.
Value type: String
Default value: none- See Also:
-
SERIALIZATION_FILTER_WHITELIST
The serialization whitelist file to use if any -
SERIALIZATION_FILTER_DRYRUN
If true then the serialization whitelist specified bySERIALIZATION_FILTER_WHITELIST
is populated with the names of all deserialized classes on server shutdown. Note this overwrites the file if it already exists. -
CONNECTION_MAINTENANCE_INTERVAL_MS
Specifies the interval between server connection maintenance runs, in milliseconds.
Value type: Integer
Default value: 30_000ms (30 seconds)
-
-
Method Details
-
serverName
String serverName()- Returns:
- the server name
- See Also:
-
port
int port()- Returns:
- the server port
-
registryPort
int registryPort()- Returns:
- the registry port to use
-
adminPort
int adminPort()- Returns:
- the port on which to make the server admin interface accessible
-
auxiliaryServerFactoryClassNames
Collection<String> auxiliaryServerFactoryClassNames()- Returns:
- the class names of auxiliary server factories, providing the servers to run alongside this server
-
sslEnabled
boolean sslEnabled()- Returns:
- true if ssl is enabled
-
rmiClientSocketFactory
RMIClientSocketFactory rmiClientSocketFactory()- Returns:
- the rmi client socket factory to use, null for default
-
rmiServerSocketFactory
RMIServerSocketFactory rmiServerSocketFactory()- Returns:
- the rmi server socket factory to use, null for default
-
serializationFilterWhitelist
String serializationFilterWhitelist()- Returns:
- the serialization whitelist to use, if any
-
serializationFilterDryRun
boolean serializationFilterDryRun()- Returns:
- true if a serialization filter dry run should be active
-
connectionMaintenanceInterval
int connectionMaintenanceInterval()- Returns:
- the interval between server connection maintenance runs, in milliseconds.
-
builder
static <B extends ServerConfiguration.Builder<B>> ServerConfiguration.Builder<B> builder(int serverPort) - Type Parameters:
B
- the builder type- Parameters:
serverPort
- the server port- Returns:
- a default server configuration
-
builder
static <B extends ServerConfiguration.Builder<B>> ServerConfiguration.Builder<B> builder(int serverPort, int registryPort) - Type Parameters:
B
- the builder type- Parameters:
serverPort
- the server portregistryPort
- the registry port- Returns:
- a default server configuration
-
builderFromSystemProperties
static <B extends ServerConfiguration.Builder<B>> ServerConfiguration.Builder<B> builderFromSystemProperties()Returns a Builder initialized with values from system properties.- Type Parameters:
B
- the builder type- Returns:
- a server configuration builder initialized with values from system properties.
-