NY_ConfigurationProviderPlugIn
The PlugIn NY_ConfigurationProvider runs a TCP server, with the help of which configuration files are offered in XML format. Nodes can request these files by a configuration name, receive the file, and import the file's data directly into their Java Preferences.
In order for a node to use this service, it must know on which host the service is offered.
For this purpose there is a key preference.tcp
, which is to be given to the starting node as a
property.
The value of the key is an IP address with a port specification.
The value can also be passed as an environment variable.
The key is then called EConfigProperties.NY_PREFERENCE_TCP
.
Since the file is requested over the network before the node network is actually started, it cannot be transported over the channels between the nodes. Therefore, untypically, a TCP connection is opened to the service for this purpose only.
The service searches for an XML file in the ConfigurationProvider
directory below the storage
directory.
The file is named after the configuration name, with .XML
extension.
Hint
The kernel prints the current configuration of a node in the storage directory in XML-Java preference format at startup. This file can be easily adapted and used for new nodes.
Client Configuration (node requesting a configuration)
Type | Description | Switch | Value | Example |
---|---|---|---|---|
Either commandline... | SERVER:PORT to connect | preference.tcp | 127.0.0.1:18000 | -Dpreference.tcp=127.0.0.1:18000 |
... or environment variable | SERVER:PORT to connect | NY_PREFERENCE_TCP | 127.0.0.1:18000 | NY_PREFERENCE_TCP=127.0.0.1:18000 |
Server configuration (NY_ConfigurationProvider plugin)
Type | Description | Switch | Value | Example |
---|---|---|---|---|
Either via commandline... | Storage directory | storage.dir | /home/michael/some/dir | -Dstorage.dir=/home/michael/some/dir |
... or via environment variable | Storage directory | NY_STORAGE_DIR | /home/michael/some/dir | NY_STORAGE_DIR=/home/michael/some/dir |
Commandline | Port for the TCP server, default=28346 | network/configuration.provider/server.port | 18000 | -Dserver.port=18000 |
Commandline | Input buffer size, default=2100 | network/configuration.provider/connection.input.buffer.size | 2100 | -Dserver.port=18000 |
Notice
Do not forget: The XML files should be placed in the %storage%/ConfigurationProvider directory.