in modules/core/src/main/java/org/apache/ignite/internal/processors/platform/utils/PlatformConfigurationUtils.java [723:957]
public static void readIgniteConfiguration(BinaryReaderEx in, IgniteConfiguration cfg) {
if (in.readBoolean())
cfg.setClientMode(in.readBoolean());
int[] evtTypes = in.readIntArray();
if (evtTypes != null)
cfg.setIncludeEventTypes(evtTypes);
if (in.readBoolean())
cfg.setMetricsExpireTime(in.readLong());
if (in.readBoolean())
cfg.setMetricsHistorySize(in.readInt());
if (in.readBoolean())
cfg.setMetricsLogFrequency(in.readLong());
if (in.readBoolean())
cfg.setMetricsUpdateFrequency(in.readLong());
if (in.readBoolean())
cfg.setNetworkSendRetryCount(in.readInt());
if (in.readBoolean())
cfg.setNetworkSendRetryDelay(in.readLong());
if (in.readBoolean())
cfg.setNetworkTimeout(in.readLong());
String workDir = in.readString();
if (workDir != null)
cfg.setWorkDirectory(workDir);
String locHost = in.readString();
if (locHost != null)
cfg.setLocalHost(locHost);
if (in.readBoolean())
cfg.setFailureDetectionTimeout(in.readLong());
if (in.readBoolean())
cfg.setClientFailureDetectionTimeout(in.readLong());
if (in.readBoolean())
cfg.setLongQueryWarningTimeout(in.readLong());
if (in.readBoolean())
cfg.setActiveOnStart(in.readBoolean());
if (in.readBoolean())
cfg.setAuthenticationEnabled(in.readBoolean());
if (in.readBoolean())
cfg.setSystemWorkerBlockedTimeout(in.readLong());
if (in.readBoolean())
cfg.setSqlQueryHistorySize(in.readInt());
if (in.readBoolean())
cfg.setPeerClassLoadingEnabled(in.readBoolean());
if (in.readBoolean())
cfg.setAsyncContinuationExecutor(getAsyncContinuationExecutor(in.readInt()));
int sqlSchemasCnt = in.readInt();
if (sqlSchemasCnt >= 0) {
String[] sqlSchemas = new String[sqlSchemasCnt];
for (int i = 0; i < sqlSchemasCnt; i++)
sqlSchemas[i] = in.readString();
cfg.setSqlSchemas(sqlSchemas);
}
Object consId = in.readObjectDetached();
if (consId instanceof Serializable) {
cfg.setConsistentId((Serializable)consId);
}
else if (consId != null) {
throw new IgniteException("IgniteConfiguration.ConsistentId should be Serializable.");
}
// Thread pools.
if (in.readBoolean())
cfg.setPublicThreadPoolSize(in.readInt());
if (in.readBoolean())
cfg.setStripedPoolSize(in.readInt());
if (in.readBoolean())
cfg.setServiceThreadPoolSize(in.readInt());
if (in.readBoolean())
cfg.setSystemThreadPoolSize(in.readInt());
if (in.readBoolean())
cfg.setAsyncCallbackPoolSize(in.readInt());
if (in.readBoolean())
cfg.setManagementThreadPoolSize(in.readInt());
if (in.readBoolean())
cfg.setDataStreamerThreadPoolSize(in.readInt());
if (in.readBoolean())
cfg.setUtilityCachePoolSize(in.readInt());
if (in.readBoolean())
cfg.setQueryThreadPoolSize(in.readInt());
readCacheConfigurations(in, cfg);
readDiscoveryConfiguration(in, cfg);
readEncryptionConfiguration(in, cfg);
if (in.readBoolean()) {
TcpCommunicationSpi comm = new TcpCommunicationSpi();
comm.setAckSendThreshold(in.readInt());
comm.setConnectionsPerNode(in.readInt());
comm.setConnectTimeout(in.readLong());
comm.setDirectBuffer(in.readBoolean());
comm.setDirectSendBuffer(in.readBoolean());
comm.setFilterReachableAddresses(in.readBoolean());
comm.setIdleConnectionTimeout(in.readLong());
comm.setLocalAddress(in.readString());
comm.setLocalPort(in.readInt());
comm.setLocalPortRange(in.readInt());
comm.setMaxConnectTimeout(in.readLong());
comm.setMessageQueueLimit(in.readInt());
comm.setReconnectCount(in.readInt());
comm.setSelectorsCount(in.readInt());
comm.setSelectorSpins(in.readLong());
comm.setSlowClientQueueLimit(in.readInt());
comm.setSocketReceiveBuffer(in.readInt());
comm.setSocketSendBuffer(in.readInt());
comm.setSocketWriteTimeout(in.readLong());
comm.setTcpNoDelay(in.readBoolean());
comm.setUnacknowledgedMessagesBufferSize(in.readInt());
comm.setUsePairedConnections(in.readBoolean());
cfg.setCommunicationSpi(comm);
}
if (in.readBoolean()) { // binary config is present
if (cfg.getBinaryConfiguration() == null)
cfg.setBinaryConfiguration(new BinaryConfiguration());
if (in.readBoolean()) // compact footer is set
cfg.getBinaryConfiguration().setCompactFooter(in.readBoolean());
if (in.readBoolean()) {
// Simple name mapper.
cfg.getBinaryConfiguration().setNameMapper(new BinaryBasicNameMapper(true));
}
}
int attrCnt = in.readInt();
if (attrCnt > 0) {
Map<String, Object> attrs = new HashMap<>(attrCnt);
for (int i = 0; i < attrCnt; i++)
attrs.put(in.readString(), in.readObject());
cfg.setUserAttributes(attrs);
}
if (in.readBoolean()) {
AtomicConfiguration atomic = new AtomicConfiguration();
atomic.setAtomicSequenceReserveSize(in.readInt());
atomic.setBackups(in.readInt());
atomic.setCacheMode(CacheMode.fromCode(in.readInt()));
cfg.setAtomicConfiguration(atomic);
}
if (in.readBoolean()) {
TransactionConfiguration tx = new TransactionConfiguration();
tx.setPessimisticTxLogSize(in.readInt());
tx.setDefaultTxConcurrency(TransactionConcurrency.fromOrdinal(in.readInt()));
tx.setDefaultTxIsolation(TransactionIsolation.fromOrdinal(in.readInt()));
tx.setDefaultTxTimeout(in.readLong());
tx.setPessimisticTxLogLinger(in.readInt());
tx.setTxTimeoutOnPartitionMapExchange(in.readLong());
cfg.setTransactionConfiguration(tx);
}
switch (in.readByte()) {
case 1:
cfg.setEventStorageSpi(new NoopEventStorageSpi());
break;
case 2:
cfg.setEventStorageSpi(new MemoryEventStorageSpi()
.setExpireCount(in.readLong())
.setExpireAgeMs(in.readLong()));
break;
}
if (in.readBoolean())
cfg.setMemoryConfiguration(readMemoryConfiguration(in));
if (in.readBoolean())
cfg.setSqlConnectorConfiguration(readSqlConnectorConfiguration(in));
if (in.readBoolean())
cfg.setClientConnectorConfiguration(readClientConnectorConfiguration(in));
if (!in.readBoolean()) // ClientConnectorConfigurationEnabled override
cfg.setClientConnectorConfiguration(null);
if (in.readBoolean())
cfg.setPersistentStoreConfiguration(readPersistentStoreConfiguration(in));
if (in.readBoolean())
cfg.setDataStorageConfiguration(readDataStorageConfiguration(in));
if (in.readBoolean())
cfg.setSslContextFactory(readSslContextFactory(in));
if (in.readBoolean()) {
switch (in.readByte()) {
case 0:
cfg.setFailureHandler(new NoOpFailureHandler());
break;
case 1:
cfg.setFailureHandler(new StopNodeFailureHandler());
break;
case 2:
cfg.setFailureHandler(new StopNodeOrHaltFailureHandler(in.readBoolean(), in.readLong()));
break;
}
}
int execCfgCnt = in.readInt();
if (execCfgCnt > 0) {
ExecutorConfiguration[] execCfgs = new ExecutorConfiguration[execCfgCnt];
for (int i = 0; i < execCfgCnt; i++) {
execCfgs[i] = new ExecutorConfiguration()
.setName(in.readString())
.setSize(in.readInt());
}
cfg.setExecutorConfiguration(execCfgs);
}
readPluginConfiguration(cfg, in);
readLocalEventListeners(cfg, in);
}