Jump to: navigation, search

ECF Generic Provider Configuration Properties

System Properties

The following are system properties used by the ECF generic provider. To set to appropriate value, typically the value would be specified on the command line. For example:

java ... -Dorg.eclipse.ecf.provider.remoteservice.executorType=threads ...
Property Name Description Type Default Value
org.eclipse.ecf.provider.generic.scheme Default protocol for generic provider urls. e.g. ecftcp://localhost:3282/server String ecftcp
org.eclipse.ecf.provider.generic.host Default host for generic provider urls. e.g. ecftcp://localhost:3282/server String localhost
org.eclipse.ecf.provider.generic.port Default port for generic provider urls. e.g. ecftcp://localhost:3282/server Integer 3282
org.eclipse.ecf.provider.generic.name Default path/name for generic provider urls. e.g. ecftcp://localhost:3282/server String /server
org.eclipse.ecf.provider.generic.keepalive Default keepalive for generic provider Integer 30000 (milliseconds)
org.eclipse.ecf.provider.generic.host.useHostName Whether to use the value of InetAddress.getLocalHost().getCanonicalHostName() as the default host value for dynamically created generic provider ID. If false, then 'localhost' is used as default. Setting this to false can be useful if your

network configuration results in getCanonicalHostName() taking a very long time to complete (> 10 seconds), due to absent or misconfigured nameserver.

Boolean true
org.eclipse.ecf.provider.generic.port.fallback What fallback port to use for generic provider server urls. If true, the generic provider port will be dynamically selected, and assured to be an available server port. If false, the value of org.eclipse.ecf.provider.generic.port (above) is used. Boolean true
org.eclipse.ecf.provider.remoteservice.addRegistrationRequestTimeout Default timeout for add registration requests (issued/sent when remote services are registered) 7000 (milliseconds)
org.eclipse.ecf.provider.remoteservice.registryUpdateRequestTimeout Default timeout for update registration requests (sent when remote services registered and/or changed) 5000 (milliseconds)
org.eclipse.ecf.provider.remoteservice.executorType Default executor types for asynchronous remote services execution. Available types are 'jobs', 'threads', 'immediate' jobs

Remote Service Configuration Properties

These following may be provided as service properties when a remote service is registered. For example:

// (If not explicitly given here, the provider is free to choose a default configuration for the service)
props.put("service.exported.configs","ecf.generic.server");
props.put("ecf.generic.server.port","3222");
// Register a new TimeServiceImpl service with the above props
bundleContext.registerService(ITimeService.class, new TimeServiceImpl(), props);

ecf.generic.server config type

Property Name Description Type Default Value
ecf.generic.server.hostname Hostname for the generic provider ID. e.g. 'localhost' in ecftcp://localhost:3282/server String The primary DNS hostname of the local host. Or value of System property org.eclipse.ecf.provider.generic.host
ecf.generic.server.port Port for the generic provider ID. e.g. '3282' in ecftcp://localhost:3282/server. If -1, an open port is automatically selected Integer or String with Integer value 3282 Or value of System property org.eclipse.ecf.provider.generic.port
ecf.generic.server.path Path section for the generic provider ID. e.g. /server in ecftcp://localhost:3282/server String /server Or value of System property org.eclipse.ecf.provider.generic.name
ecf.generic.server.keepAlive keepAlive value for generic provider Integer or String with Integer value 30000 (ms) Or value of System property org.eclipse.ecf.provider.generic.keepAlive
ecf.generic.server.bindAddress Bind address to be used for opening ServerSocket InetAddress 0.0.0.0 - all available network interfaces
ecf.generic.server.id Entire id for generic provider e.g. ecftcp://localhost:3282/server String ecftcp://<primary DNS hostname>:3282/server

ecf.generic.ssl.server config type

Property Name Description Type Default Value
ecf.generic.ssl.server.hostname Hostname for the generic provider ID. e.g. 'localhost' in ecftcp://localhost:3282/server String The primary DNS hostname of the local host. Or value of System property org.eclipse.ecf.provider.generic.host
ecf.generic.ssl.server.port Port for the generic provider ID. e.g. '3282' in ecftcp://localhost:3282/server. If -1, an open port is automatically selected Integer or String with Integer value 3282 Or value of System property org.eclipse.ecf.provider.generic.port
ecf.generic.ssl.server.path Path section for the generic provider ID. e.g. /server in ecftcp://localhost:3282/server String /server Or value of System property org.eclipse.ecf.provider.generic.name
ecf.generic.ssl.server.keepAlive keepAlive value for generic provider Integer or String with Integer value 30000 (ms) Or value of System property org.eclipse.ecf.provider.generic.keepAlive
ecf.generic.ssl.server.bindAddress Bind address to be used for opening ServerSocket InetAddress 0.0.0.0 - all available network interfaces
ecf.generic.ssl.server.id Entire id for generic provider e.g. ecftcp://localhost:3282/server String ecftcp://<primary DNS hostname>:3282/server
ecf.generic.ssl.server.needClientAuth Whether the underlying SSLServerSocket will have the SSLServerSocket.setNeedClientAuth(true) Boolean false
ecf.generic.ssl.server.wantClientAuth Whether the underlying SSLServerSocket will have the SSLServerSocket.setWantClientAuth(true). Note that if the 'needClientAuth' above is set to true, setting this property will have no effect. Boolean false