ComponentRegistry systemRegistry,
TransactionProxy txnProxy)
throws IOException
{
logger.log(Level.CONFIG, "Creating DataStoreServerImpl");
PropertiesWrapper wrappedProps = new PropertiesWrapper(properties);
store = new CustomDataStoreImpl(properties, systemRegistry, txnProxy);
maxTxnTimeout = wrappedProps.getLongProperty(
MAX_TXN_TIMEOUT_PROPERTY, DEFAULT_MAX_TXN_TIMEOUT,
1, Long.MAX_VALUE);
int requestedPort = wrappedProps.getIntProperty(
PORT_PROPERTY, DEFAULT_PORT, 0, 65535);
exporter = noRmi ?
new SocketExporter(DataStoreServer.class) :
new Exporter<DataStoreServer>(DataStoreServer.class);
port = exporter.export(this, "DataStoreServer", requestedPort);
if (requestedPort == 0) {
logger.log(Level.INFO, "Server is using port {0,number,#}", port);
}
long reapDelay = wrappedProps.getLongProperty(
REAP_DELAY_PROPERTY, DEFAULT_REAP_DELAY);
executor = Executors.newSingleThreadScheduledExecutor(
new NamedThreadFactory("DataStoreServer-TransactionReaper"));
executor.scheduleAtFixedRate(
new Runnable() {