You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sb...@apache.org on 2017/04/06 13:31:12 UTC
[05/50] [abbrv] ignite git commit: IGNITE-4564: All setters on public
configuration now return "this" instance to allow convenient chaining. This
closes #1449.
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/configuration/FileSystemConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/configuration/FileSystemConfiguration.java b/modules/core/src/main/java/org/apache/ignite/configuration/FileSystemConfiguration.java
index 1a8d576..75e9f7d 100644
--- a/modules/core/src/main/java/org/apache/ignite/configuration/FileSystemConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/configuration/FileSystemConfiguration.java
@@ -249,9 +249,12 @@ public class FileSystemConfiguration {
* Sets IGFS instance name.
*
* @param name IGFS instance name.
+ * @return {@code this} for chaining.
*/
- public void setName(String name) {
+ public FileSystemConfiguration setName(String name) {
this.name = name;
+
+ return this;
}
/**
@@ -275,9 +278,12 @@ public class FileSystemConfiguration {
* </ul>
*
* @param metaCacheCfg Cache configuration object.
+ * @return {@code this} for chaining.
*/
- public void setMetaCacheConfiguration(CacheConfiguration metaCacheCfg) {
+ public FileSystemConfiguration setMetaCacheConfiguration(CacheConfiguration metaCacheCfg) {
this.metaCacheCfg = metaCacheCfg;
+
+ return this;
}
/**
@@ -301,9 +307,12 @@ public class FileSystemConfiguration {
* </ul>
*
* @param dataCacheCfg Cache configuration object.
+ * @return {@code this} for chaining.
*/
- public void setDataCacheConfiguration(CacheConfiguration dataCacheCfg) {
+ public FileSystemConfiguration setDataCacheConfiguration(CacheConfiguration dataCacheCfg) {
this.dataCacheCfg = dataCacheCfg;
+
+ return this;
}
/**
@@ -319,11 +328,14 @@ public class FileSystemConfiguration {
* Sets file's data block size.
*
* @param blockSize File's data block size (bytes) or {@code 0} to reset default value.
+ * @return {@code this} for chaining.
*/
- public void setBlockSize(int blockSize) {
+ public FileSystemConfiguration setBlockSize(int blockSize) {
A.ensure(blockSize >= 0, "blockSize >= 0");
this.blockSize = blockSize == 0 ? DFLT_BLOCK_SIZE : blockSize;
+
+ return this;
}
/**
@@ -339,11 +351,14 @@ public class FileSystemConfiguration {
* Sets the number of pre-fetched blocks if specific file's chunk is requested.
*
* @param prefetchBlocks New number of pre-fetched blocks.
+ * @return {@code this} for chaining.
*/
- public void setPrefetchBlocks(int prefetchBlocks) {
+ public FileSystemConfiguration setPrefetchBlocks(int prefetchBlocks) {
A.ensure(prefetchBlocks >= 0, "prefetchBlocks >= 0");
this.prefetchBlocks = prefetchBlocks;
+
+ return this;
}
/**
@@ -381,11 +396,14 @@ public class FileSystemConfiguration {
* <b>NOTE:</b> Integration with Hadoop is available only in {@code In-Memory Accelerator For Hadoop} edition.
*
* @param seqReadsBeforePrefetch Amount of sequential block reads before prefetch is triggered.
+ * @return {@code this} for chaining.
*/
- public void setSequentialReadsBeforePrefetch(int seqReadsBeforePrefetch) {
+ public FileSystemConfiguration setSequentialReadsBeforePrefetch(int seqReadsBeforePrefetch) {
A.ensure(seqReadsBeforePrefetch >= 0, "seqReadsBeforePrefetch >= 0");
this.seqReadsBeforePrefetch = seqReadsBeforePrefetch;
+
+ return this;
}
/**
@@ -401,11 +419,14 @@ public class FileSystemConfiguration {
* Sets read/write buffers size for {@code IGFS} stream operations (bytes).
*
* @param bufSize Read/write buffers size for stream operations (bytes) or {@code 0} to reset default value.
+ * @return {@code this} for chaining.
*/
- public void setStreamBufferSize(int bufSize) {
+ public FileSystemConfiguration setStreamBufferSize(int bufSize) {
A.ensure(bufSize >= 0, "bufSize >= 0");
this.bufSize = bufSize == 0 ? DFLT_BUF_SIZE : bufSize;
+
+ return this;
}
/**
@@ -421,9 +442,12 @@ public class FileSystemConfiguration {
* Sets number of file blocks collected on local node before sending batch to remote node.
*
* @param perNodeBatchSize Per node buffer size.
+ * @return {@code this} for chaining.
*/
- public void setPerNodeBatchSize(int perNodeBatchSize) {
+ public FileSystemConfiguration setPerNodeBatchSize(int perNodeBatchSize) {
this.perNodeBatchSize = perNodeBatchSize;
+
+ return this;
}
/**
@@ -439,9 +463,12 @@ public class FileSystemConfiguration {
* Sets number of file block batches that can be concurrently sent to remote node.
*
* @param perNodeParallelBatchCnt Per node parallel load operations.
+ * @return {@code this} for chaining.
*/
- public void setPerNodeParallelBatchCount(int perNodeParallelBatchCnt) {
+ public FileSystemConfiguration setPerNodeParallelBatchCount(int perNodeParallelBatchCnt) {
this.perNodeParallelBatchCnt = perNodeParallelBatchCnt;
+
+ return this;
}
/**
@@ -463,9 +490,12 @@ public class FileSystemConfiguration {
* Hadoop Accelerator</b>.
*
* @param ipcEndpointCfg IPC endpoint configuration.
+ * @return {@code this} for chaining.
*/
- public void setIpcEndpointConfiguration(@Nullable IgfsIpcEndpointConfiguration ipcEndpointCfg) {
+ public FileSystemConfiguration setIpcEndpointConfiguration(@Nullable IgfsIpcEndpointConfiguration ipcEndpointCfg) {
this.ipcEndpointCfg = ipcEndpointCfg;
+
+ return this;
}
/**
@@ -488,9 +518,12 @@ public class FileSystemConfiguration {
* Hadoop Accelerator</b>.
*
* @param ipcEndpointEnabled IPC endpoint enabled flag.
+ * @return {@code this} for chaining.
*/
- public void setIpcEndpointEnabled(boolean ipcEndpointEnabled) {
+ public FileSystemConfiguration setIpcEndpointEnabled(boolean ipcEndpointEnabled) {
this.ipcEndpointEnabled = ipcEndpointEnabled;
+
+ return this;
}
/**
@@ -509,9 +542,12 @@ public class FileSystemConfiguration {
* Sets management endpoint port.
*
* @param mgmtPort port number or {@code -1} to disable management endpoint.
+ * @return {@code this} for chaining.
*/
- public void setManagementPort(int mgmtPort) {
+ public FileSystemConfiguration setManagementPort(int mgmtPort) {
this.mgmtPort = mgmtPort;
+
+ return this;
}
/**
@@ -534,9 +570,12 @@ public class FileSystemConfiguration {
* for pass-through, write-through, and read-through purposes.
*
* @param dfltMode {@code IGFS} mode.
+ * @return {@code this} for chaining.
*/
- public void setDefaultMode(IgfsMode dfltMode) {
+ public FileSystemConfiguration setDefaultMode(IgfsMode dfltMode) {
this.dfltMode = dfltMode;
+
+ return this;
}
/**
@@ -554,9 +593,12 @@ public class FileSystemConfiguration {
* and read-through purposes.
*
* @param fileSystem Secondary file system.
+ * @return {@code this} for chaining.
*/
- public void setSecondaryFileSystem(IgfsSecondaryFileSystem fileSystem) {
+ public FileSystemConfiguration setSecondaryFileSystem(IgfsSecondaryFileSystem fileSystem) {
secondaryFs = fileSystem;
+
+ return this;
}
/**
@@ -587,9 +629,12 @@ public class FileSystemConfiguration {
* {@link #getDefaultMode()} is used.
*
* @param pathModes Map of paths to {@code IGFS} modes.
+ * @return {@code this} for chaining.
*/
- public void setPathModes(Map<String, IgfsMode> pathModes) {
+ public FileSystemConfiguration setPathModes(Map<String, IgfsMode> pathModes) {
this.pathModes = pathModes;
+
+ return this;
}
/**
@@ -605,15 +650,19 @@ public class FileSystemConfiguration {
* Sets length of file chunk to transmit before throttling is delayed.
*
* @param fragmentizerThrottlingBlockLen Block length in bytes.
+ * @return {@code this} for chaining.
*/
- public void setFragmentizerThrottlingBlockLength(long fragmentizerThrottlingBlockLen) {
+ public FileSystemConfiguration setFragmentizerThrottlingBlockLength(long fragmentizerThrottlingBlockLen) {
this.fragmentizerThrottlingBlockLen = fragmentizerThrottlingBlockLen;
+
+ return this;
}
/**
* Gets throttle delay for fragmentizer.
*
* @return Throttle delay in milliseconds.
+ * @return {@code this} for chaining.
*/
public long getFragmentizerThrottlingDelay() {
return fragmentizerThrottlingDelay;
@@ -624,14 +673,17 @@ public class FileSystemConfiguration {
*
* @param fragmentizerThrottlingDelay Delay in milliseconds.
*/
- public void setFragmentizerThrottlingDelay(long fragmentizerThrottlingDelay) {
+ public FileSystemConfiguration setFragmentizerThrottlingDelay(long fragmentizerThrottlingDelay) {
this.fragmentizerThrottlingDelay = fragmentizerThrottlingDelay;
+
+ return this;
}
/**
* Gets number of files that can be processed by fragmentizer concurrently.
*
* @return Number of files to process concurrently.
+ * @return {@code this} for chaining.
*/
public int getFragmentizerConcurrentFiles() {
return fragmentizerConcurrentFiles;
@@ -641,9 +693,12 @@ public class FileSystemConfiguration {
* Sets number of files to process concurrently by fragmentizer.
*
* @param fragmentizerConcurrentFiles Number of files to process concurrently.
+ * @return {@code this} for chaining.
*/
- public void setFragmentizerConcurrentFiles(int fragmentizerConcurrentFiles) {
+ public FileSystemConfiguration setFragmentizerConcurrentFiles(int fragmentizerConcurrentFiles) {
this.fragmentizerConcurrentFiles = fragmentizerConcurrentFiles;
+
+ return this;
}
/**
@@ -672,10 +727,13 @@ public class FileSystemConfiguration {
* @see #getFragmentizerLocalWritesRatio()
*
* @deprecated Parameter is no longer used.
+ * @return {@code this} for chaining.
*/
@Deprecated
- public void setFragmentizerLocalWritesRatio(float fragmentizerLocWritesRatio) {
+ public FileSystemConfiguration setFragmentizerLocalWritesRatio(float fragmentizerLocWritesRatio) {
this.fragmentizerLocWritesRatio = fragmentizerLocWritesRatio;
+
+ return this;
}
/**
@@ -692,9 +750,12 @@ public class FileSystemConfiguration {
* Sets property indicating whether fragmentizer is enabled.
*
* @param fragmentizerEnabled {@code True} if fragmentizer is enabled.
+ * @return {@code this} for chaining.
*/
- public void setFragmentizerEnabled(boolean fragmentizerEnabled) {
+ public FileSystemConfiguration setFragmentizerEnabled(boolean fragmentizerEnabled) {
this.fragmentizerEnabled = fragmentizerEnabled;
+
+ return this;
}
/**
@@ -710,9 +771,12 @@ public class FileSystemConfiguration {
* Set maximum space in bytes available in data cache.
*
* @param maxSpace Maximum space available in data cache.
+ * @return {@code this} for chaining.
*/
- public void setMaxSpaceSize(long maxSpace) {
+ public FileSystemConfiguration setMaxSpaceSize(long maxSpace) {
this.maxSpace = maxSpace;
+
+ return this;
}
/**
@@ -731,10 +795,13 @@ public class FileSystemConfiguration {
*
* @param trashPurgeTimeout Maximum timeout awaiting for trash purging in case data cache oversize is detected.
* @deprecated Not used any more.
+ * @return {@code this} for chaining.
*/
@Deprecated
- public void setTrashPurgeTimeout(long trashPurgeTimeout) {
+ public FileSystemConfiguration setTrashPurgeTimeout(long trashPurgeTimeout) {
this.trashPurgeTimeout = trashPurgeTimeout;
+
+ return this;
}
/**
@@ -756,10 +823,13 @@ public class FileSystemConfiguration {
*
* @param dualModePutExec Dual mode put operations executor service.
* @deprecated Not used any more.
+ * @return {@code this} for chaining.
*/
@Deprecated
- public void setDualModePutExecutorService(ExecutorService dualModePutExec) {
+ public FileSystemConfiguration setDualModePutExecutorService(ExecutorService dualModePutExec) {
this.dualModePutExec = dualModePutExec;
+
+ return this;
}
/**
@@ -778,10 +848,13 @@ public class FileSystemConfiguration {
*
* @param dualModePutExecShutdown Dual mode put operations executor service shutdown flag.
* @deprecated Not used any more.
+ * @return {@code this} for chaining.
*/
@Deprecated
- public void setDualModePutExecutorServiceShutdown(boolean dualModePutExecShutdown) {
+ public FileSystemConfiguration setDualModePutExecutorServiceShutdown(boolean dualModePutExecShutdown) {
this.dualModePutExecShutdown = dualModePutExecShutdown;
+
+ return this;
}
/**
@@ -805,10 +878,13 @@ public class FileSystemConfiguration {
*
* @param dualModeMaxPendingPutsSize Maximum amount of data in pending put operations.
* @deprecated Not used any more.
+ * @return {@code this} for chaining.
*/
@Deprecated
- public void setDualModeMaxPendingPutsSize(long dualModeMaxPendingPutsSize) {
+ public FileSystemConfiguration setDualModeMaxPendingPutsSize(long dualModeMaxPendingPutsSize) {
this.dualModeMaxPendingPutsSize = dualModeMaxPendingPutsSize;
+
+ return this;
}
/**
@@ -846,9 +922,12 @@ public class FileSystemConfiguration {
* See {@link #getMaximumTaskRangeLength()} for more details.
*
* @param maxTaskRangeLen Set maximum default range size of a file being split during IGFS task execution.
+ * @return {@code this} for chaining.
*/
- public void setMaximumTaskRangeLength(long maxTaskRangeLen) {
+ public FileSystemConfiguration setMaximumTaskRangeLength(long maxTaskRangeLen) {
this.maxTaskRangeLen = maxTaskRangeLen;
+
+ return this;
}
/**
@@ -880,9 +959,12 @@ public class FileSystemConfiguration {
* See {@link #isInitializeDefaultPathModes()} for more information.
*
* @param initDfltPathModes Whether to initialize default path modes.
+ * @return {@code this} for chaining.
*/
- public void setInitializeDefaultPathModes(boolean initDfltPathModes) {
+ public FileSystemConfiguration setInitializeDefaultPathModes(boolean initDfltPathModes) {
this.initDfltPathModes = initDfltPathModes;
+
+ return this;
}
/**
@@ -919,9 +1001,12 @@ public class FileSystemConfiguration {
* See {@link #isColocateMetadata()} for more information.
*
* @param colocateMeta Whether metadata co-location is enabled.
+ * @return {@code this} for chaining.
*/
- public void setColocateMetadata(boolean colocateMeta) {
+ public FileSystemConfiguration setColocateMetadata(boolean colocateMeta) {
this.colocateMeta = colocateMeta;
+
+ return this;
}
/**
@@ -956,9 +1041,12 @@ public class FileSystemConfiguration {
* See {@link #isColocateMetadata()} for more information.
*
* @param relaxedConsistency Whether to use relaxed consistency optimization.
+ * @return {@code this} for chaining.
*/
- public void setRelaxedConsistency(boolean relaxedConsistency) {
+ public FileSystemConfiguration setRelaxedConsistency(boolean relaxedConsistency) {
this.relaxedConsistency = relaxedConsistency;
+
+ return this;
}
/**
@@ -982,9 +1070,12 @@ public class FileSystemConfiguration {
* Set {@link #isUpdateFileLengthOnFlush()} for more information.
*
* @param updateFileLenOnFlush Whether to update file length on flush.
+ * @return {@code this} for chaining.
*/
- public void setUpdateFileLengthOnFlush(boolean updateFileLenOnFlush) {
+ public FileSystemConfiguration setUpdateFileLengthOnFlush(boolean updateFileLenOnFlush) {
this.updateFileLenOnFlush = updateFileLenOnFlush;
+
+ return this;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/configuration/HadoopConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/configuration/HadoopConfiguration.java b/modules/core/src/main/java/org/apache/ignite/configuration/HadoopConfiguration.java
index 6443a67..8d8e96c 100644
--- a/modules/core/src/main/java/org/apache/ignite/configuration/HadoopConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/configuration/HadoopConfiguration.java
@@ -92,9 +92,12 @@ public class HadoopConfiguration {
* Sets max number of local tasks that may be executed in parallel.
*
* @param maxParallelTasks Max number of local tasks that may be executed in parallel.
+ * @return {@code this} for chaining.
*/
- public void setMaxParallelTasks(int maxParallelTasks) {
+ public HadoopConfiguration setMaxParallelTasks(int maxParallelTasks) {
this.maxParallelTasks = maxParallelTasks;
+
+ return this;
}
/**
@@ -110,9 +113,12 @@ public class HadoopConfiguration {
* Sets max task queue size.
*
* @param maxTaskQueueSize Max task queue size.
+ * @return {@code this} for chaining.
*/
- public void setMaxTaskQueueSize(int maxTaskQueueSize) {
+ public HadoopConfiguration setMaxTaskQueueSize(int maxTaskQueueSize) {
this.maxTaskQueueSize = maxTaskQueueSize;
+
+ return this;
}
/**
@@ -128,9 +134,12 @@ public class HadoopConfiguration {
* Sets finished job info time-to-live.
*
* @param finishedJobInfoTtl Finished job info time-to-live.
+ * @return {@code this} for chaining.
*/
- public void setFinishedJobInfoTtl(long finishedJobInfoTtl) {
+ public HadoopConfiguration setFinishedJobInfoTtl(long finishedJobInfoTtl) {
this.finishedJobInfoTtl = finishedJobInfoTtl;
+
+ return this;
}
/**
@@ -149,10 +158,14 @@ public class HadoopConfiguration {
*
* @param extExecution {@code True} if tasks should be executed in an external process.
* @see #isExternalExecution()
+ * @return {@code this} for chaining.
*/
// TODO: IGNITE-404: Uncomment when fixed.
-// public void setExternalExecution(boolean extExecution) {
+//
+// public HadoopConfiguration setExternalExecution(boolean extExecution) {
// this.extExecution = extExecution;
+//
+// return this;
// }
/**
@@ -170,9 +183,12 @@ public class HadoopConfiguration {
* configuration and current grid topology.
*
* @param planner Map-reduce planner.
+ * @return {@code this} for chaining.
*/
- public void setMapReducePlanner(HadoopMapReducePlanner planner) {
+ public HadoopConfiguration setMapReducePlanner(HadoopMapReducePlanner planner) {
this.planner = planner;
+
+ return this;
}
/**
@@ -199,9 +215,12 @@ public class HadoopConfiguration {
* Set native library names. See {@link #getNativeLibraryNames()} for more information.
*
* @param libNames Native library names.
+ * @return {@code this} for chaining.
*/
- public void setNativeLibraryNames(@Nullable String... libNames) {
+ public HadoopConfiguration setNativeLibraryNames(@Nullable String... libNames) {
this.libNames = libNames;
+
+ return this;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/configuration/NearCacheConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/configuration/NearCacheConfiguration.java b/modules/core/src/main/java/org/apache/ignite/configuration/NearCacheConfiguration.java
index 3c59bd6..7c948dc 100644
--- a/modules/core/src/main/java/org/apache/ignite/configuration/NearCacheConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/configuration/NearCacheConfiguration.java
@@ -17,7 +17,11 @@
package org.apache.ignite.configuration;
+import javax.cache.configuration.Factory;
import javax.cache.configuration.MutableConfiguration;
+import javax.cache.expiry.ExpiryPolicy;
+import javax.cache.integration.CacheLoader;
+import javax.cache.integration.CacheWriter;
import org.apache.ignite.cache.CacheMode;
import org.apache.ignite.cache.eviction.EvictionPolicy;
import org.apache.ignite.internal.util.typedef.internal.S;
@@ -108,6 +112,52 @@ public class NearCacheConfiguration<K, V> extends MutableConfiguration<K, V> {
}
/** {@inheritDoc} */
+ @Override public CacheConfiguration<K, V> setTypes(Class<K> keyType, Class<V> valueType) {
+ return (CacheConfiguration<K, V>)super.setTypes(keyType, valueType);
+ }
+
+ /** {@inheritDoc} */
+ @Override public CacheConfiguration<K, V> setCacheLoaderFactory(Factory<? extends CacheLoader<K, V>> factory) {
+ return (CacheConfiguration<K, V>)super.setCacheLoaderFactory(factory);
+ }
+
+ /** {@inheritDoc} */
+ @Override public CacheConfiguration<K, V> setCacheWriterFactory(
+ Factory<? extends CacheWriter<? super K, ? super V>> factory) {
+ return (CacheConfiguration<K, V>)super.setCacheWriterFactory(factory);
+ }
+
+ /** {@inheritDoc} */
+ @Override public CacheConfiguration<K, V> setExpiryPolicyFactory(Factory<? extends ExpiryPolicy> factory) {
+ return (CacheConfiguration<K, V>)super.setExpiryPolicyFactory(factory);
+ }
+
+ /** {@inheritDoc} */
+ @Override public CacheConfiguration<K, V> setReadThrough(boolean isReadThrough) {
+ return (CacheConfiguration<K, V>)super.setReadThrough(isReadThrough);
+ }
+
+ /** {@inheritDoc} */
+ @Override public CacheConfiguration<K, V> setWriteThrough(boolean isWriteThrough) {
+ return (CacheConfiguration<K, V>)super.setWriteThrough(isWriteThrough);
+ }
+
+ /** {@inheritDoc} */
+ @Override public CacheConfiguration<K, V> setStoreByValue(boolean isStoreByValue) {
+ return (CacheConfiguration<K, V>)super.setStoreByValue(isStoreByValue);
+ }
+
+ /** {@inheritDoc} */
+ @Override public CacheConfiguration<K, V> setStatisticsEnabled(boolean enabled) {
+ return (CacheConfiguration<K, V>)super.setStatisticsEnabled(enabled);
+ }
+
+ /** {@inheritDoc} */
+ @Override public CacheConfiguration<K, V> setManagementEnabled(boolean enabled) {
+ return (CacheConfiguration<K, V>)super.setManagementEnabled(enabled);
+ }
+
+ /** {@inheritDoc} */
@Override public String toString() {
return S.toString(NearCacheConfiguration.class, this, super.toString());
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/configuration/TransactionConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/configuration/TransactionConfiguration.java b/modules/core/src/main/java/org/apache/ignite/configuration/TransactionConfiguration.java
index 440e00a..0063afc 100644
--- a/modules/core/src/main/java/org/apache/ignite/configuration/TransactionConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/configuration/TransactionConfiguration.java
@@ -113,10 +113,13 @@ public class TransactionConfiguration implements Serializable {
* @param txSerEnabled Flag to enable/disable serializable cache transactions.
* @deprecated This method has no effect, {@link TransactionIsolation#SERIALIZABLE} isolation is always enabled.
+ * @return {@code this} for chaining.
*/
@Deprecated
- public void setTxSerializableEnabled(boolean txSerEnabled) {
+ public TransactionConfiguration setTxSerializableEnabled(boolean txSerEnabled) {
this.txSerEnabled = txSerEnabled;
+
+ return this;
}
/**
@@ -134,9 +137,12 @@ public class TransactionConfiguration implements Serializable {
* Sets default transaction concurrency.
*
* @param dfltConcurrency Default cache transaction concurrency.
+ * @return {@code this} for chaining.
*/
- public void setDefaultTxConcurrency(TransactionConcurrency dfltConcurrency) {
+ public TransactionConfiguration setDefaultTxConcurrency(TransactionConcurrency dfltConcurrency) {
this.dfltConcurrency = dfltConcurrency;
+
+ return this;
}
/**
@@ -154,9 +160,12 @@ public class TransactionConfiguration implements Serializable {
* Sets default transaction isolation.
*
* @param dfltIsolation Default cache transaction isolation.
+ * @return {@code this} for chaining.
*/
- public void setDefaultTxIsolation(TransactionIsolation dfltIsolation) {
+ public TransactionConfiguration setDefaultTxIsolation(TransactionIsolation dfltIsolation) {
this.dfltIsolation = dfltIsolation;
+
+ return this;
}
/**
@@ -174,9 +183,12 @@ public class TransactionConfiguration implements Serializable {
* #DFLT_TRANSACTION_TIMEOUT}.
*
* @param dfltTxTimeout Default transaction timeout.
+ * @return {@code this} for chaining.
*/
- public void setDefaultTxTimeout(long dfltTxTimeout) {
+ public TransactionConfiguration setDefaultTxTimeout(long dfltTxTimeout) {
this.dfltTxTimeout = dfltTxTimeout;
+
+ return this;
}
/**
@@ -196,9 +208,12 @@ public class TransactionConfiguration implements Serializable {
*
* @param pessimisticTxLogSize Pessimistic transactions log size.
* @see #getPessimisticTxLogSize()
+ * @return {@code this} for chaining.
*/
- public void setPessimisticTxLogSize(int pessimisticTxLogSize) {
+ public TransactionConfiguration setPessimisticTxLogSize(int pessimisticTxLogSize) {
this.pessimisticTxLogSize = pessimisticTxLogSize;
+
+ return this;
}
/**
@@ -217,9 +232,12 @@ public class TransactionConfiguration implements Serializable {
*
* @param pessimisticTxLogLinger Pessimistic log cleanup delay.
* @see #getPessimisticTxLogLinger()
+ * @return {@code this} for chaining.
*/
- public void setPessimisticTxLogLinger(int pessimisticTxLogLinger) {
+ public TransactionConfiguration setPessimisticTxLogLinger(int pessimisticTxLogLinger) {
this.pessimisticTxLogLinger = pessimisticTxLogLinger;
+
+ return this;
}
/**
@@ -239,10 +257,13 @@ public class TransactionConfiguration implements Serializable {
* @param tmLookupClsName Name of class implementing GridCacheTmLookup interface that is used to
* receive JTA transaction manager.
* @deprecated Use {@link #setTxManagerFactory(Factory)} instead.
+ * @return {@code this} for chaining.
*/
@Deprecated
- public void setTxManagerLookupClassName(String tmLookupClsName) {
+ public TransactionConfiguration setTxManagerLookupClassName(String tmLookupClsName) {
this.tmLookupClsName = tmLookupClsName;
+
+ return this;
}
/**
@@ -286,9 +307,12 @@ public class TransactionConfiguration implements Serializable {
* @param factory Transaction manager factory.
* @param <T> Instance of {@code javax.transaction.TransactionManager}.
* @see #setUseJtaSynchronization(boolean)
+ * @return {@code this} for chaining.
*/
- public <T> void setTxManagerFactory(Factory<T> factory) {
+ public <T> TransactionConfiguration setTxManagerFactory(Factory<T> factory) {
txManagerFactory = factory;
+
+ return this;
}
/**
@@ -309,8 +333,11 @@ public class TransactionConfiguration implements Serializable {
* @param useJtaSync Whether to use JTA {@code javax.transaction.Synchronization}
* instead of {@code javax.transaction.xa.XAResource}.
* @see #setTxManagerFactory(Factory)
+ * @return {@code this} for chaining.
*/
- public void setUseJtaSynchronization(boolean useJtaSync) {
+ public TransactionConfiguration setUseJtaSynchronization(boolean useJtaSync) {
this.useJtaSync = useJtaSync;
+
+ return this;
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/igfs/IgfsGroupDataBlocksKeyMapper.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/igfs/IgfsGroupDataBlocksKeyMapper.java b/modules/core/src/main/java/org/apache/ignite/igfs/IgfsGroupDataBlocksKeyMapper.java
index 09143d4..7019c57 100644
--- a/modules/core/src/main/java/org/apache/ignite/igfs/IgfsGroupDataBlocksKeyMapper.java
+++ b/modules/core/src/main/java/org/apache/ignite/igfs/IgfsGroupDataBlocksKeyMapper.java
@@ -124,9 +124,12 @@ public class IgfsGroupDataBlocksKeyMapper extends GridCacheDefaultAffinityKeyMap
* Set group size. See {@link #getGroupSize()} for more information.
*
* @param grpSize Group size.
+ * @return {@code this} for chaining.
*/
- public void setGroupSize(int grpSize) {
+ public IgfsGroupDataBlocksKeyMapper setGroupSize(int grpSize) {
this.grpSize = grpSize;
+
+ return this;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/igfs/IgfsIpcEndpointConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/igfs/IgfsIpcEndpointConfiguration.java b/modules/core/src/main/java/org/apache/ignite/igfs/IgfsIpcEndpointConfiguration.java
index 1c68d0f..b79f68e 100644
--- a/modules/core/src/main/java/org/apache/ignite/igfs/IgfsIpcEndpointConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/igfs/IgfsIpcEndpointConfiguration.java
@@ -113,9 +113,12 @@ public class IgfsIpcEndpointConfiguration {
* Defaults to {@link #DFLT_TYPE}.
*
* @param type Endpoint type.
+ * @return {@code this} for chaining.
*/
- public void setType(IgfsIpcEndpointType type) {
+ public IgfsIpcEndpointConfiguration setType(IgfsIpcEndpointType type) {
this.type = type;
+
+ return this;
}
/**
@@ -147,9 +150,12 @@ public class IgfsIpcEndpointConfiguration {
* Defaults to {@link #DFLT_HOST}.
*
* @param host Host.
+ * @return {@code this} for chaining.
*/
- public void setHost(String host) {
+ public IgfsIpcEndpointConfiguration setHost(String host) {
this.host = host;
+
+ return this;
}
/**
@@ -179,9 +185,12 @@ public class IgfsIpcEndpointConfiguration {
* Defaults to {@link #DFLT_PORT}.
*
* @param port Port.
+ * @return {@code this} for chaining.
*/
- public void setPort(int port) {
+ public IgfsIpcEndpointConfiguration setPort(int port) {
this.port = port;
+
+ return this;
}
/**
@@ -205,9 +214,12 @@ public class IgfsIpcEndpointConfiguration {
* Defaults to {@link #DFLT_MEM_SIZE}.
*
* @param memSize Shared memory size.
+ * @return {@code this} for chaining.
*/
- public void setMemorySize(int memSize) {
+ public IgfsIpcEndpointConfiguration setMemorySize(int memSize) {
this.memSize = memSize;
+
+ return this;
}
/**
@@ -237,9 +249,12 @@ public class IgfsIpcEndpointConfiguration {
* Defaults to {@link #DFLT_TOKEN_DIR_PATH}.
*
* @param tokenDirPath Directory where shared memory tokens are stored.
+ * @return {@code this} for chaining.
*/
- public void setTokenDirectoryPath(String tokenDirPath) {
+ public IgfsIpcEndpointConfiguration setTokenDirectoryPath(String tokenDirPath) {
this.tokenDirPath = tokenDirPath;
+
+ return this;
}
/**
@@ -259,9 +274,12 @@ public class IgfsIpcEndpointConfiguration {
* See {@link #getThreadCount()} for more information.
*
* @param threadCnt Number of threads used by this endpoint to process incoming requests.
+ * @return {@code this} for chaining.
*/
- public void setThreadCount(int threadCnt) {
+ public IgfsIpcEndpointConfiguration setThreadCount(int threadCnt) {
this.threadCnt = threadCnt;
+
+ return this;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientConfiguration.java b/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientConfiguration.java
index cac1bb3..a54f882 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientConfiguration.java
@@ -234,18 +234,24 @@ public class GridClientConfiguration {
* Sets list of servers this client should connect to.
*
* @param srvs List of servers.
+ * @return {@code this} for chaining.
*/
- public void setServers(Collection<String> srvs) {
+ public GridClientConfiguration setServers(Collection<String> srvs) {
this.srvs = srvs != null ? srvs : Collections.<String>emptySet();
+
+ return this;
}
/**
* Sets list of routers this client should connect to.
*
* @param routers List of routers.
+ * @return {@code this} for chaining.
*/
- public void setRouters(Collection<String> routers) {
+ public GridClientConfiguration setRouters(Collection<String> routers) {
this.routers = routers != null ? routers : Collections.<String>emptySet();
+
+ return this;
}
/**
@@ -264,9 +270,12 @@ public class GridClientConfiguration {
*
* @param proto Protocol type.
* @see GridClientProtocol
+ * @return {@code this} for chaining.
*/
- public void setProtocol(GridClientProtocol proto) {
+ public GridClientConfiguration setProtocol(GridClientProtocol proto) {
this.proto = proto;
+
+ return this;
}
/**
@@ -296,18 +305,24 @@ public class GridClientConfiguration {
* Sets whether {@code TCP_NODELAY} flag should be set on underlying socket connections.
*
* @param tcpNoDelay {@code True} if flag should be set.
+ * @return {@code this} for chaining.
*/
- public void setTcpNoDelay(boolean tcpNoDelay) {
+ public GridClientConfiguration setTcpNoDelay(boolean tcpNoDelay) {
this.tcpNoDelay = tcpNoDelay;
+
+ return this;
}
/**
* Sets timeout for socket connect operation.
*
* @param connectTimeout Connect timeout in milliseconds.
+ * @return {@code this} for chaining.
*/
- public void setConnectTimeout(int connectTimeout) {
+ public GridClientConfiguration setConnectTimeout(int connectTimeout) {
this.connectTimeout = connectTimeout;
+
+ return this;
}
/**
@@ -325,9 +340,12 @@ public class GridClientConfiguration {
* Sets SSL context factory that will be used for creation of secure connections.
*
* @param sslCtxFactory Context factory.
+ * @return {@code this} for chaining.
*/
- public void setSslContextFactory(GridSslContextFactory sslCtxFactory) {
+ public GridClientConfiguration setSslContextFactory(GridSslContextFactory sslCtxFactory) {
this.sslCtxFactory = sslCtxFactory;
+
+ return this;
}
/**
@@ -345,9 +363,12 @@ public class GridClientConfiguration {
* Sets default compute balancer.
*
* @param balancer Balancer to use.
+ * @return {@code this} for chaining.
*/
- public void setBalancer(GridClientLoadBalancer balancer) {
+ public GridClientConfiguration setBalancer(GridClientLoadBalancer balancer) {
this.balancer = balancer;
+
+ return this;
}
/**
@@ -363,9 +384,12 @@ public class GridClientConfiguration {
* Sets client credentials provider used in authentication process.
*
* @param credProvider Client credentials provider.
+ * @return {@code this} for chaining.
*/
- public void setSecurityCredentialsProvider(SecurityCredentialsProvider credProvider) {
+ public GridClientConfiguration setSecurityCredentialsProvider(SecurityCredentialsProvider credProvider) {
this.credProvider = credProvider;
+
+ return this;
}
/**
@@ -381,12 +405,15 @@ public class GridClientConfiguration {
* Sets data configurations.
*
* @param dataCfgs Data configurations.
+ * @return {@code this} for chaining.
*/
- public void setDataConfigurations(Collection<? extends GridClientDataConfiguration> dataCfgs) {
+ public GridClientConfiguration setDataConfigurations(Collection<? extends GridClientDataConfiguration> dataCfgs) {
this.dataCfgs = U.newHashMap(dataCfgs.size());
for (GridClientDataConfiguration dataCfg : dataCfgs)
this.dataCfgs.put(dataCfg.getName(), new GridClientDataConfiguration(dataCfg));
+
+ return this;
}
/**
@@ -403,9 +430,12 @@ public class GridClientConfiguration {
* Sets flag indicating whether node and cache metrics should be cached by client.
*
* @param enableMetricsCache {@code True} if cache should be enabled.
+ * @return {@code this} for chaining.
*/
- public void setEnableMetricsCache(boolean enableMetricsCache) {
+ public GridClientConfiguration setEnableMetricsCache(boolean enableMetricsCache) {
this.enableMetricsCache = enableMetricsCache;
+
+ return this;
}
/**
@@ -430,9 +460,12 @@ public class GridClientConfiguration {
* Sets flag indicating whether node attributes should be cached by client.
*
* @param enableAttrsCache {@code True} if cache should be enabled.
+ * @return {@code this} for chaining.
*/
- public void setEnableAttributesCache(boolean enableAttrsCache) {
+ public GridClientConfiguration setEnableAttributesCache(boolean enableAttrsCache) {
this.enableAttrsCache = enableAttrsCache;
+
+ return this;
}
/**
@@ -457,9 +490,12 @@ public class GridClientConfiguration {
* Sets flag indicating whether node metrics should be fetched by client automatically.
*
* @param autoFetchMetrics {@code True} if metrics should be fetched.
+ * @return {@code this} for chaining.
*/
- public void setAutoFetchMetrics(boolean autoFetchMetrics) {
+ public GridClientConfiguration setAutoFetchMetrics(boolean autoFetchMetrics) {
this.autoFetchMetrics = autoFetchMetrics;
+
+ return this;
}
/**
@@ -483,9 +519,12 @@ public class GridClientConfiguration {
* Sets flag indicating whether node attributes should be fetched by client automatically.
*
* @param autoFetchAttrs {@code True} if attributes should be fetched.
+ * @return {@code this} for chaining.
*/
- public void setAutoFetchAttributes(boolean autoFetchAttrs) {
+ public GridClientConfiguration setAutoFetchAttributes(boolean autoFetchAttrs) {
this.autoFetchAttrs = autoFetchAttrs;
+
+ return this;
}
/**
@@ -516,9 +555,12 @@ public class GridClientConfiguration {
* will be refreshed every {@code topRefreshFreq} milliseconds.
*
* @param topRefreshFreq Topology refresh frequency in milliseconds.
+ * @return {@code this} for chaining.
*/
- public void setTopologyRefreshFrequency(long topRefreshFreq) {
+ public GridClientConfiguration setTopologyRefreshFrequency(long topRefreshFreq) {
this.topRefreshFreq = topRefreshFreq;
+
+ return this;
}
/**
@@ -535,9 +577,12 @@ public class GridClientConfiguration {
* Sets maximum time in milliseconds which connection can be idle before it is closed by client.
*
* @param maxConnIdleTime Maximum time of connection idleness in milliseconds.
+ * @return {@code this} for chaining.
*/
- public void setMaxConnectionIdleTime(long maxConnIdleTime) {
+ public GridClientConfiguration setMaxConnectionIdleTime(long maxConnIdleTime) {
this.maxConnIdleTime = maxConnIdleTime;
+
+ return this;
}
/**
@@ -557,9 +602,12 @@ public class GridClientConfiguration {
* Sets ping interval in milliseconds.
*
* @param pingInterval Ping interval in milliseconds.
+ * @return {@code this} for chaining.
*/
- public void setPingInterval(long pingInterval) {
+ public GridClientConfiguration setPingInterval(long pingInterval) {
this.pingInterval = pingInterval;
+
+ return this;
}
/**
@@ -580,9 +628,12 @@ public class GridClientConfiguration {
* Sets ping timeout in milliseconds.
*
* @param pingTimeout Ping interval in milliseconds.
+ * @return {@code this} for chaining.
*/
- public void setPingTimeout(long pingTimeout) {
+ public GridClientConfiguration setPingTimeout(long pingTimeout) {
this.pingTimeout = pingTimeout;
+
+ return this;
}
/**
@@ -603,9 +654,12 @@ public class GridClientConfiguration {
* Sets executor service.
*
* @param executor Executor service to use in client.
+ * @return {@code this} for chaining.
*/
- public void setExecutorService(ExecutorService executor) {
+ public GridClientConfiguration setExecutorService(ExecutorService executor) {
this.executor = executor;
+
+ return this;
}
/**
@@ -628,9 +682,12 @@ public class GridClientConfiguration {
* Sets the marshaller to use for communication.
*
* @param marshaller A marshaller to use.
+ * @return {@code this} for chaining.
*/
- public void setMarshaller(GridClientMarshaller marshaller) {
+ public GridClientConfiguration setMarshaller(GridClientMarshaller marshaller) {
this.marshaller = marshaller;
+
+ return this;
}
/**
@@ -836,9 +893,12 @@ public class GridClientConfiguration {
* Set the daemon flag value. Communication threads will be created as daemons if this flag is set.
*
* @param daemon Daemon flag.
+ * @return {@code this} for chaining.
*/
- public void setDaemon(boolean daemon) {
+ public GridClientConfiguration setDaemon(boolean daemon) {
this.daemon = daemon;
+
+ return this;
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientDataConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientDataConfiguration.java b/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientDataConfiguration.java
index 322bccd..9a52554 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientDataConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientDataConfiguration.java
@@ -65,9 +65,12 @@ public class GridClientDataConfiguration {
* Sets grid cache name for this configuration.
*
* @param name Cache name.
+ * @return {@code this} for chaining.
*/
- public void setName(String name) {
+ public GridClientDataConfiguration setName(String name) {
this.name = name;
+
+ return this;
}
/**
@@ -93,9 +96,12 @@ public class GridClientDataConfiguration {
* work with remote partitioned caches.
*
* @param affinity Client data affinity.
+ * @return {@code this} for chaining.
*/
- public void setAffinity(GridClientDataAffinity affinity) {
+ public GridClientDataConfiguration setAffinity(GridClientDataAffinity affinity) {
this.affinity = affinity;
+
+ return this;
}
/**
@@ -112,8 +118,11 @@ public class GridClientDataConfiguration {
* Sets balancer for pinned mode for this configuration.
*
* @param balancer Balancer that will be used in pinned mode.
+ * @return {@code this} for chaining.
*/
- public void setBalancer(GridClientLoadBalancer balancer) {
+ public GridClientDataConfiguration setBalancer(GridClientLoadBalancer balancer) {
this.balancer = balancer;
+
+ return this;
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientPartitionAffinity.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientPartitionAffinity.java b/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientPartitionAffinity.java
index 53a49c6..21f4abe 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientPartitionAffinity.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/client/GridClientPartitionAffinity.java
@@ -143,9 +143,12 @@ public class GridClientPartitionAffinity implements GridClientDataAffinity, Grid
* Sets total number of partitions.
*
* @param parts Total number of partitions.
+ * @return {@code this} for chaining.
*/
- public void setPartitions(int parts) {
+ public GridClientPartitionAffinity setPartitions(int parts) {
this.parts = parts;
+
+ return this;
}
/**
@@ -175,9 +178,12 @@ public class GridClientPartitionAffinity implements GridClientDataAffinity, Grid
* repartitioning.
*
* @param hashIdRslvr Hash ID resolver.
+ * @return {@code this} for chaining.
*/
- public void setHashIdResolver(HashIdResolver hashIdRslvr) {
+ public GridClientPartitionAffinity setHashIdResolver(HashIdResolver hashIdRslvr) {
this.hashIdRslvr = hashIdRslvr;
+
+ return this;
}
/**
@@ -201,9 +207,12 @@ public class GridClientPartitionAffinity implements GridClientDataAffinity, Grid
* Note that {@code excludeNeighbors} parameter is ignored if {@code backupFilter} is set.
*
* @param backupFilter Optional backup filter.
+ * @return {@code this} for chaining.
*/
- public void setBackupFilter(GridClientPredicate<UUID> backupFilter) {
+ public GridClientPartitionAffinity setBackupFilter(GridClientPredicate<UUID> backupFilter) {
this.backupFilter = backupFilter;
+
+ return this;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/internal/client/balancer/GridClientBalancerAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/client/balancer/GridClientBalancerAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/client/balancer/GridClientBalancerAdapter.java
index 3eb7e1d..75d4163 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/client/balancer/GridClientBalancerAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/client/balancer/GridClientBalancerAdapter.java
@@ -58,9 +58,12 @@ public abstract class GridClientBalancerAdapter implements GridClientLoadBalance
* Sets prefer direct nodes.
*
* @param preferDirectNodes Prefer direct nodes.
+ * @return {@code this} for chaining.
*/
- public void setPreferDirectNodes(boolean preferDirectNodes) {
+ public GridClientBalancerAdapter setPreferDirectNodes(boolean preferDirectNodes) {
this.preferDirectNodes = preferDirectNodes;
+
+ return this;
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/internal/client/router/GridTcpRouterConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/client/router/GridTcpRouterConfiguration.java b/modules/core/src/main/java/org/apache/ignite/internal/client/router/GridTcpRouterConfiguration.java
index 191f4ac..e37ffea 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/client/router/GridTcpRouterConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/client/router/GridTcpRouterConfiguration.java
@@ -207,18 +207,24 @@ public class GridTcpRouterConfiguration {
* Sets host for router.
*
* @param host Host.
+ * @return {@code this} for chaining.
*/
- public void setHost(String host) {
+ public GridTcpRouterConfiguration setHost(String host) {
this.host = host;
+
+ return this;
}
/**
* Sets port for router.
*
* @param port Port.
+ * @return {@code this} for chaining.
*/
- public void setPort(int port) {
+ public GridTcpRouterConfiguration setPort(int port) {
this.port = port;
+
+ return this;
}
/**
@@ -228,11 +234,14 @@ public class GridTcpRouterConfiguration {
*
* @param portRange Port range.
* @see #DFLT_PORT_RANGE
+ * @return {@code this} for chaining.
*/
- public void setPortRange(int portRange) {
+ public GridTcpRouterConfiguration setPortRange(int portRange) {
A.ensure(portRange >= 0, "portRange >= 0");
this.portRange = portRange;
+
+ return this;
}
/**
@@ -240,18 +249,24 @@ public class GridTcpRouterConfiguration {
* for accepted client connections.
*
* @param noDelay No delay.
+ * @return {@code this} for chaining.
*/
- public void setNoDelay(boolean noDelay) {
+ public GridTcpRouterConfiguration setNoDelay(boolean noDelay) {
this.noDelay = noDelay;
+
+ return this;
}
/**
* Sets idle timeout.
*
* @param idleTimeout Idle timeout in milliseconds.
+ * @return {@code this} for chaining.
*/
- public void setIdleTimeout(long idleTimeout) {
+ public GridTcpRouterConfiguration setIdleTimeout(long idleTimeout) {
this.idleTimeout = idleTimeout;
+
+ return this;
}
/**
@@ -259,9 +274,12 @@ public class GridTcpRouterConfiguration {
* a valid SSL certificate which validity will be verified with trust manager.
*
* @param sslClientAuth Ssl client auth.
+ * @return {@code this} for chaining.
*/
- public void setSslClientAuth(boolean sslClientAuth) {
+ public GridTcpRouterConfiguration setSslClientAuth(boolean sslClientAuth) {
this.sslClientAuth = sslClientAuth;
+
+ return this;
}
/**
@@ -269,36 +287,48 @@ public class GridTcpRouterConfiguration {
* of both rest binary server and out coming connections.
*
* @param sslCtxFactory Ssl context factory.
+ * @return {@code this} for chaining.
*/
- public void setSslContextFactory(GridSslContextFactory sslCtxFactory) {
+ public GridTcpRouterConfiguration setSslContextFactory(GridSslContextFactory sslCtxFactory) {
this.sslCtxFactory = sslCtxFactory;
+
+ return this;
}
/**
* Sets list of server addresses where router's embedded client should connect.
*
* @param srvrs List of servers.
+ * @return {@code this} for chaining.
*/
- public void setServers(Collection<String> srvrs) {
+ public GridTcpRouterConfiguration setServers(Collection<String> srvrs) {
this.srvrs = srvrs;
+
+ return this;
}
/**
* Sets logger for the router instance.
*
* @param log Logger.
+ * @return {@code this} for chaining.
*/
- public void setLogger(IgniteLogger log) {
+ public GridTcpRouterConfiguration setLogger(IgniteLogger log) {
this.log = log;
+
+ return this;
}
/**
* Sets credentials provider for grid access.
*
* @param credsProvider Credentials provider.
+ * @return {@code this} for chaining.
*/
- public void setSecurityCredentialsProvider(SecurityCredentialsProvider credsProvider) {
+ public GridTcpRouterConfiguration setSecurityCredentialsProvider(SecurityCredentialsProvider credsProvider) {
this.credsProvider = credsProvider;
+
+ return this;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/internal/jdbc2/JdbcSqlFieldsQuery.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/jdbc2/JdbcSqlFieldsQuery.java b/modules/core/src/main/java/org/apache/ignite/internal/jdbc2/JdbcSqlFieldsQuery.java
index 19dedf6..3d4eaba 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/jdbc2/JdbcSqlFieldsQuery.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/jdbc2/JdbcSqlFieldsQuery.java
@@ -17,6 +17,7 @@
package org.apache.ignite.internal.jdbc2;
+import java.util.concurrent.TimeUnit;
import org.apache.ignite.cache.query.SqlFieldsQuery;
/**
@@ -45,4 +46,60 @@ public final class JdbcSqlFieldsQuery extends SqlFieldsQuery {
public boolean isQuery() {
return isQry;
}
+
+ /** {@inheritDoc} */
+ @Override public JdbcSqlFieldsQuery setSql(String sql) {
+ super.setSql(sql);
+
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override public JdbcSqlFieldsQuery setArgs(Object... args) {
+ super.setArgs(args);
+
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override public JdbcSqlFieldsQuery setTimeout(int timeout, TimeUnit timeUnit) {
+ super.setTimeout(timeout, timeUnit);
+
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override public JdbcSqlFieldsQuery setCollocated(boolean collocated) {
+ super.setCollocated(collocated);
+
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override public JdbcSqlFieldsQuery setEnforceJoinOrder(boolean enforceJoinOrder) {
+ super.setEnforceJoinOrder(enforceJoinOrder);
+
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override public JdbcSqlFieldsQuery setDistributedJoins(boolean distributedJoins) {
+ super.setDistributedJoins(distributedJoins);
+
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override public JdbcSqlFieldsQuery setPageSize(int pageSize) {
+ super.setPageSize(pageSize);
+
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override public JdbcSqlFieldsQuery setLocal(boolean loc) {
+ super.setLocal(loc);
+
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
index a7d38a7..966fa8e 100755
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
@@ -120,6 +120,7 @@ import org.apache.ignite.lang.IgniteUuid;
import org.apache.ignite.lifecycle.LifecycleAware;
import org.apache.ignite.marshaller.Marshaller;
import org.apache.ignite.marshaller.MarshallerUtils;
+import org.apache.ignite.mxbean.IgniteMBeanAware;
import org.apache.ignite.spi.IgniteNodeValidationResult;
import org.apache.ignite.spi.discovery.DiscoveryDataBag;
import org.apache.ignite.spi.discovery.DiscoveryDataBag.GridDiscoveryData;
@@ -3560,15 +3561,15 @@ public class GridCacheProcessor extends GridProcessorAdapter {
/**
* Registers MBean for cache components.
*
- * @param o Cache component.
+ * @param obj Cache component.
* @param cacheName Cache name.
* @param near Near flag.
* @throws IgniteCheckedException If registration failed.
*/
@SuppressWarnings("unchecked")
- private void registerMbean(Object o, @Nullable String cacheName, boolean near)
+ private void registerMbean(Object obj, @Nullable String cacheName, boolean near)
throws IgniteCheckedException {
- assert o != null;
+ assert obj != null;
MBeanServer srvr = ctx.config().getMBeanServer();
@@ -3578,14 +3579,16 @@ public class GridCacheProcessor extends GridProcessorAdapter {
cacheName = near ? cacheName + "-near" : cacheName;
- for (Class<?> itf : o.getClass().getInterfaces()) {
+ final Object mbeanImpl = (obj instanceof IgniteMBeanAware) ? ((IgniteMBeanAware)obj).getMBean() : obj;
+
+ for (Class<?> itf : mbeanImpl.getClass().getInterfaces()) {
if (itf.getName().endsWith("MBean") || itf.getName().endsWith("MXBean")) {
try {
- U.registerCacheMBean(srvr, ctx.igniteInstanceName(), cacheName, o.getClass().getName(), o,
+ U.registerCacheMBean(srvr, ctx.igniteInstanceName(), cacheName, obj.getClass().getName(), mbeanImpl,
(Class<Object>)itf);
}
catch (JMException e) {
- throw new IgniteCheckedException("Failed to register MBean for component: " + o, e);
+ throw new IgniteCheckedException("Failed to register MBean for component: " + obj, e);
}
break;
@@ -3611,16 +3614,24 @@ public class GridCacheProcessor extends GridProcessorAdapter {
cacheName = near ? cacheName + "-near" : cacheName;
- for (Class<?> itf : o.getClass().getInterfaces()) {
- if (itf.getName().endsWith("MBean") || itf.getName().endsWith("MXBean")) {
- try {
- srvr.unregisterMBean(U.makeCacheMBeanName(ctx.igniteInstanceName(), cacheName, o.getClass().getName()));
- }
- catch (JMException e) {
- U.error(log, "Failed to unregister MBean for component: " + o, e);
+ boolean needToUnregister = o instanceof IgniteMBeanAware;
+
+ if (!needToUnregister) {
+ for (Class<?> itf : o.getClass().getInterfaces()) {
+ if (itf.getName().endsWith("MBean") || itf.getName().endsWith("MXBean")) {
+ needToUnregister = true;
+
+ break;
}
+ }
+ }
- break;
+ if (needToUnregister) {
+ try {
+ srvr.unregisterMBean(U.makeCacheMBeanName(ctx.igniteInstanceName(), cacheName, o.getClass().getName()));
+ }
+ catch (JMException e) {
+ U.error(log, "Failed to unregister MBean for component: " + o, e);
}
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/dotnet/PlatformDotNetConfigurationEx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/dotnet/PlatformDotNetConfigurationEx.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/dotnet/PlatformDotNetConfigurationEx.java
index 8448733..a5d793d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/dotnet/PlatformDotNetConfigurationEx.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/dotnet/PlatformDotNetConfigurationEx.java
@@ -17,6 +17,7 @@
package org.apache.ignite.internal.processors.platform.dotnet;
+import java.util.List;
import org.apache.ignite.internal.logger.platform.PlatformLogger;
import org.apache.ignite.internal.processors.platform.PlatformConfigurationEx;
import org.apache.ignite.internal.processors.platform.cache.PlatformCacheExtension;
@@ -25,6 +26,7 @@ import org.apache.ignite.internal.processors.platform.entityframework.PlatformDo
import org.apache.ignite.internal.processors.platform.memory.PlatformMemoryManagerImpl;
import org.apache.ignite.internal.processors.platform.utils.PlatformUtils;
import org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionCacheExtension;
+import org.apache.ignite.platform.dotnet.PlatformDotNetBinaryConfiguration;
import org.apache.ignite.platform.dotnet.PlatformDotNetConfiguration;
import org.jetbrains.annotations.Nullable;
@@ -98,11 +100,28 @@ public class PlatformDotNetConfigurationEx extends PlatformDotNetConfiguration i
return logger;
}
+ /** {@inheritDoc} */
+ @Override public PlatformDotNetConfigurationEx setBinaryConfiguration(PlatformDotNetBinaryConfiguration binaryCfg) {
+ super.setBinaryConfiguration(binaryCfg);
+
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override public PlatformDotNetConfigurationEx setAssemblies(List<String> assemblies) {
+ super.setAssemblies(assemblies);
+
+ return this;
+ }
+
/**
* @param warnings Warnings.
+ * @return {@code this} for chaining.
*/
- public void warnings(Collection<String> warnings) {
+ public PlatformDotNetConfigurationEx warnings(Collection<String> warnings) {
this.warnings = warnings;
+
+ return this;
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/utils/PlatformConfigurationUtils.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/utils/PlatformConfigurationUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/utils/PlatformConfigurationUtils.java
index b2926e3..5f73f79 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/utils/PlatformConfigurationUtils.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/utils/PlatformConfigurationUtils.java
@@ -62,7 +62,6 @@ import org.apache.ignite.plugin.platform.PlatformPluginConfigurationClosure;
import org.apache.ignite.plugin.platform.PlatformPluginConfigurationClosureFactory;
import org.apache.ignite.spi.communication.CommunicationSpi;
import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi;
-import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpiMBean;
import org.apache.ignite.spi.discovery.DiscoverySpi;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder;
@@ -1014,7 +1013,7 @@ public class PlatformConfigurationUtils {
if (comm instanceof TcpCommunicationSpi) {
w.writeBoolean(true);
- TcpCommunicationSpiMBean tcp = (TcpCommunicationSpiMBean) comm;
+ TcpCommunicationSpi tcp = (TcpCommunicationSpi) comm;
w.writeInt(tcp.getAckSendThreshold());
w.writeLong(tcp.getConnectTimeout());
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedMarshaller.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedMarshaller.java b/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedMarshaller.java
index 6d57864..e61e8dc 100644
--- a/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedMarshaller.java
+++ b/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedMarshaller.java
@@ -124,18 +124,24 @@ public class OptimizedMarshaller extends AbstractNodeNameAwareMarshaller {
* Sets whether marshaller should require {@link Serializable} interface or not.
*
* @param requireSer Whether to require {@link Serializable}.
+ * @return {@code this} for chaining.
*/
- public void setRequireSerializable(boolean requireSer) {
+ public OptimizedMarshaller setRequireSerializable(boolean requireSer) {
this.requireSer = requireSer;
+
+ return this;
}
/**
* Sets ID mapper.
*
* @param mapper ID mapper.
+ * @return {@code this} for chaining.
*/
- public void setIdMapper(OptimizedMarshallerIdMapper mapper) {
+ public OptimizedMarshaller setIdMapper(OptimizedMarshallerIdMapper mapper) {
this.mapper = mapper;
+
+ return this;
}
/**
@@ -152,9 +158,12 @@ public class OptimizedMarshaller extends AbstractNodeNameAwareMarshaller {
* different threads which will lead to more frequent context switching.
*
* @param poolSize Streams pool size. If {@code 0}, pool is not used.
+ * @return {@code this} for chaining.
*/
- public void setPoolSize(int poolSize) {
+ public OptimizedMarshaller setPoolSize(int poolSize) {
OptimizedObjectStreamRegistry.poolSize(poolSize);
+
+ return this;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/mxbean/IgniteMBeanAware.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/mxbean/IgniteMBeanAware.java b/modules/core/src/main/java/org/apache/ignite/mxbean/IgniteMBeanAware.java
new file mode 100644
index 0000000..ef917b5
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/mxbean/IgniteMBeanAware.java
@@ -0,0 +1,28 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.mxbean;
+
+/**
+ * MBean-aware interface.
+ */
+public interface IgniteMBeanAware {
+ /**
+ * @return MBean for this object.
+ */
+ Object getMBean();
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetAffinityFunction.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetAffinityFunction.java b/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetAffinityFunction.java
index f9f457d..f51a41d 100644
--- a/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetAffinityFunction.java
+++ b/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetAffinityFunction.java
@@ -64,9 +64,12 @@ public class PlatformDotNetAffinityFunction implements AffinityFunction, Externa
* Sets .NET type name.
*
* @param typName .NET type name.
+ * @return {@code this} for chaining.
*/
- public void setTypeName(String typName) {
+ public PlatformDotNetAffinityFunction setTypeName(String typName) {
this.typName = typName;
+
+ return this;
}
/**
@@ -82,9 +85,12 @@ public class PlatformDotNetAffinityFunction implements AffinityFunction, Externa
* Set properties.
*
* @param props Properties.
+ * @return {@code this} for chaining.
*/
- public void setProperties(Map<String, ?> props) {
+ public PlatformDotNetAffinityFunction setProperties(Map<String, ?> props) {
this.props = props;
+
+ return this;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetBinaryConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetBinaryConfiguration.java b/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetBinaryConfiguration.java
index 7c5da2f..876a58c 100644
--- a/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetBinaryConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetBinaryConfiguration.java
@@ -81,9 +81,13 @@ public class PlatformDotNetBinaryConfiguration {
/**
* @param typesCfg New type cfgs.
+ * @return {@code this} for chaining.
*/
- public void setTypesConfiguration(Collection<PlatformDotNetBinaryTypeConfiguration> typesCfg) {
+ public PlatformDotNetBinaryConfiguration setTypesConfiguration(
+ Collection<PlatformDotNetBinaryTypeConfiguration> typesCfg) {
this.typesCfg = typesCfg;
+
+ return this;
}
/**
@@ -95,9 +99,12 @@ public class PlatformDotNetBinaryConfiguration {
/**
* @param types New types.
+ * @return {@code this} for chaining.
*/
- public void setTypes(Collection<String> types) {
+ public PlatformDotNetBinaryConfiguration setTypes(Collection<String> types) {
this.types = types;
+
+ return this;
}
/**
@@ -109,9 +116,12 @@ public class PlatformDotNetBinaryConfiguration {
/**
* @param dfltNameMapper New default name mapper.
+ * @return {@code this} for chaining.
*/
- public void setDefaultNameMapper(String dfltNameMapper) {
+ public PlatformDotNetBinaryConfiguration setDefaultNameMapper(String dfltNameMapper) {
this.dfltNameMapper = dfltNameMapper;
+
+ return this;
}
/**
@@ -123,9 +133,12 @@ public class PlatformDotNetBinaryConfiguration {
/**
* @param dfltIdMapper New default id mapper.
+ * @return {@code this} for chaining.
*/
- public void setDefaultIdMapper(String dfltIdMapper) {
+ public PlatformDotNetBinaryConfiguration setDefaultIdMapper(String dfltIdMapper) {
this.dfltIdMapper = dfltIdMapper;
+
+ return this;
}
/**
@@ -137,9 +150,12 @@ public class PlatformDotNetBinaryConfiguration {
/**
* @param dfltSerializer New default serializer.
+ * @return {@code this} for chaining.
*/
- public void setDefaultSerializer(String dfltSerializer) {
+ public PlatformDotNetBinaryConfiguration setDefaultSerializer(String dfltSerializer) {
this.dfltSerializer = dfltSerializer;
+
+ return this;
}
/**
@@ -158,9 +174,12 @@ public class PlatformDotNetBinaryConfiguration {
* {@link PlatformDotNetBinaryTypeConfiguration#setKeepDeserialized(Boolean)}.
*
* @param keepDeserialized Keep deserialized flag.
+ * @return {@code this} for chaining.
*/
- public void setDefaultKeepDeserialized(boolean keepDeserialized) {
+ public PlatformDotNetBinaryConfiguration setDefaultKeepDeserialized(boolean keepDeserialized) {
this.dfltKeepDeserialized = keepDeserialized;
+
+ return this;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetBinaryTypeConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetBinaryTypeConfiguration.java b/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetBinaryTypeConfiguration.java
index cae5760..1949f71 100644
--- a/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetBinaryTypeConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetBinaryTypeConfiguration.java
@@ -75,9 +75,12 @@ public class PlatformDotNetBinaryTypeConfiguration {
/**
* @param typeName New type name.
+ * @return {@code this} for chaining.
*/
- public void setTypeName(String typeName) {
+ public PlatformDotNetBinaryTypeConfiguration setTypeName(String typeName) {
this.typeName = typeName;
+
+ return this;
}
/**
@@ -89,9 +92,12 @@ public class PlatformDotNetBinaryTypeConfiguration {
/**
* @param nameMapper New name mapper.
+ * @return {@code this} for chaining.
*/
- public void setNameMapper(String nameMapper) {
+ public PlatformDotNetBinaryTypeConfiguration setNameMapper(String nameMapper) {
this.nameMapper = nameMapper;
+
+ return this;
}
/**
@@ -103,9 +109,12 @@ public class PlatformDotNetBinaryTypeConfiguration {
/**
* @param idMapper New id mapper.
+ * @return {@code this} for chaining.
*/
- public void setIdMapper(String idMapper) {
+ public PlatformDotNetBinaryTypeConfiguration setIdMapper(String idMapper) {
this.idMapper = idMapper;
+
+ return this;
}
/**
@@ -117,9 +126,12 @@ public class PlatformDotNetBinaryTypeConfiguration {
/**
* @param serializer New serializer.
+ * @return {@code this} for chaining.
*/
- public void setSerializer(String serializer) {
+ public PlatformDotNetBinaryTypeConfiguration setSerializer(String serializer) {
this.serializer = serializer;
+
+ return this;
}
/**
@@ -131,9 +143,12 @@ public class PlatformDotNetBinaryTypeConfiguration {
/**
* @param affinityKeyFieldName Affinity key field name.
+ * @return {@code this} for chaining.
*/
- public void setAffinityKeyFieldName(String affinityKeyFieldName) {
+ public PlatformDotNetBinaryTypeConfiguration setAffinityKeyFieldName(String affinityKeyFieldName) {
this.affinityKeyFieldName = affinityKeyFieldName;
+
+ return this;
}
/**
@@ -163,9 +178,12 @@ public class PlatformDotNetBinaryTypeConfiguration {
* {@link PlatformDotNetBinaryConfiguration#isDefaultKeepDeserialized()} will be used.
*
* @param keepDeserialized Keep deserialized flag.
+ * @return {@code this} for chaining.
*/
- public void setKeepDeserialized(@Nullable Boolean keepDeserialized) {
+ public PlatformDotNetBinaryTypeConfiguration setKeepDeserialized(@Nullable Boolean keepDeserialized) {
this.keepDeserialized = keepDeserialized;
+
+ return this;
}
/**
@@ -181,9 +199,12 @@ public class PlatformDotNetBinaryTypeConfiguration {
* Sets whether this is enum type.
*
* @param isEnum {@code True} if enum.
+ * @return {@code this} for chaining.
*/
- public void setEnum(boolean isEnum) {
+ public PlatformDotNetBinaryTypeConfiguration setEnum(boolean isEnum) {
this.isEnum = isEnum;
+
+ return this;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetConfiguration.java b/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetConfiguration.java
index d31ab95..1c058c1 100644
--- a/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/platform/dotnet/PlatformDotNetConfiguration.java
@@ -62,9 +62,12 @@ public class PlatformDotNetConfiguration implements PlatformConfiguration {
/**
* @param binaryCfg Configuration.
+ * @return {@code this} for chaining.
*/
- public void setBinaryConfiguration(PlatformDotNetBinaryConfiguration binaryCfg) {
+ public PlatformDotNetConfiguration setBinaryConfiguration(PlatformDotNetBinaryConfiguration binaryCfg) {
this.binaryCfg = binaryCfg;
+
+ return this;
}
/**
@@ -77,9 +80,12 @@ public class PlatformDotNetConfiguration implements PlatformConfiguration {
/**
*
* @param assemblies Assemblies.
+ * @return {@code this} for chaining.
*/
- public void setAssemblies(List<String> assemblies) {
+ public PlatformDotNetConfiguration setAssemblies(List<String> assemblies) {
this.assemblies = assemblies;
+
+ return this;
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/services/ServiceConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/services/ServiceConfiguration.java b/modules/core/src/main/java/org/apache/ignite/services/ServiceConfiguration.java
index 6698dd4..0589b79 100644
--- a/modules/core/src/main/java/org/apache/ignite/services/ServiceConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/services/ServiceConfiguration.java
@@ -94,9 +94,12 @@ public class ServiceConfiguration implements Serializable {
* This parameter is mandatory when deploying a service.
*
* @param name Service name.
+ * @return {@code this} for chaining.
*/
- public void setName(String name) {
+ public ServiceConfiguration setName(String name) {
this.name = name;
+
+ return this;
}
/**
@@ -116,9 +119,12 @@ public class ServiceConfiguration implements Serializable {
* This parameter is mandatory when deploying a service.
*
* @param svc Service instance.
+ * @return {@code this} for chaining.
*/
- public void setService(Service svc) {
+ public ServiceConfiguration setService(Service svc) {
this.svc = svc;
+
+ return this;
}
/**
@@ -138,9 +144,12 @@ public class ServiceConfiguration implements Serializable {
* At least one of {@code getTotalCount()} or {@link #getMaxPerNodeCount()} values must be positive.
*
* @param totalCnt Total number of deployed service instances in the cluster, {@code 0} for unlimited.
+ * @return {@code this} for chaining.
*/
- public void setTotalCount(int totalCnt) {
+ public ServiceConfiguration setTotalCount(int totalCnt) {
this.totalCnt = totalCnt;
+
+ return this;
}
/**
@@ -160,9 +169,12 @@ public class ServiceConfiguration implements Serializable {
* At least one of {@code getMaxPerNodeCount()} or {@link #getTotalCount()} values must be positive.
*
* @param maxPerNodeCnt Maximum number of deployed service instances on each node, {@code 0} for unlimited.
+ * @return {@code this} for chaining.
*/
- public void setMaxPerNodeCount(int maxPerNodeCnt) {
+ public ServiceConfiguration setMaxPerNodeCount(int maxPerNodeCnt) {
this.maxPerNodeCnt = maxPerNodeCnt;
+
+ return this;
}
/**
@@ -182,9 +194,12 @@ public class ServiceConfiguration implements Serializable {
* This parameter is optional and is set only when deploying service based on key-affinity.
*
* @param cacheName Cache name, possibly {@code null}.
+ * @return {@code this} for chaining.
*/
- public void setCacheName(String cacheName) {
+ public ServiceConfiguration setCacheName(String cacheName) {
this.cacheName = cacheName;
+
+ return this;
}
/**
@@ -204,9 +219,12 @@ public class ServiceConfiguration implements Serializable {
* This parameter is optional and is set only when deploying service based on key-affinity.
*
* @param affKey Affinity key, possibly {@code null}.
+ * @return {@code this} for chaining.
*/
- public void setAffinityKey(Object affKey) {
+ public ServiceConfiguration setAffinityKey(Object affKey) {
this.affKey = affKey;
+
+ return this;
}
/**
@@ -228,9 +246,12 @@ public class ServiceConfiguration implements Serializable {
* nodes in the grid, based on configuration.
*
* @param nodeFilter Node filter used to filter nodes on which the service will be deployed, possibly {@code null}.
+ * @return {@code this} for chaining.
*/
- public void setNodeFilter(IgnitePredicate<ClusterNode> nodeFilter) {
+ public ServiceConfiguration setNodeFilter(IgnitePredicate<ClusterNode> nodeFilter) {
this.nodeFilter = nodeFilter;
+
+ return this;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
index ab14a57..d1219f7 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
@@ -18,10 +18,8 @@
package org.apache.ignite.spi;
import java.io.Serializable;
-import java.text.DateFormat;
import java.util.Collection;
import java.util.Collections;
-import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.UUID;
@@ -43,7 +41,6 @@ import org.apache.ignite.internal.managers.eventstorage.GridLocalEventListener;
import org.apache.ignite.internal.processors.timeout.GridSpiTimeoutObject;
import org.apache.ignite.internal.util.IgniteExceptionRegistry;
import org.apache.ignite.internal.util.typedef.F;
-import org.apache.ignite.internal.util.typedef.X;
import org.apache.ignite.internal.util.typedef.internal.CU;
import org.apache.ignite.internal.util.typedef.internal.SB;
import org.apache.ignite.internal.util.typedef.internal.U;
@@ -65,7 +62,7 @@ import static org.apache.ignite.events.EventType.EVT_NODE_JOINED;
/**
* This class provides convenient adapter for SPI implementations.
*/
-public abstract class IgniteSpiAdapter implements IgniteSpi, IgniteSpiManagementMBean {
+public abstract class IgniteSpiAdapter implements IgniteSpi {
/** */
private ObjectName spiMBean;
@@ -142,31 +139,6 @@ public abstract class IgniteSpiAdapter implements IgniteSpi, IgniteSpiManagement
return startedFlag.get();
}
- /** {@inheritDoc} */
- @Override public final String getStartTimestampFormatted() {
- return DateFormat.getDateTimeInstance().format(new Date(startTstamp));
- }
-
- /** {@inheritDoc} */
- @Override public final String getUpTimeFormatted() {
- return X.timeSpan2HMSM(getUpTime());
- }
-
- /** {@inheritDoc} */
- @Override public final long getStartTimestamp() {
- return startTstamp;
- }
-
- /** {@inheritDoc} */
- @Override public final long getUpTime() {
- return startTstamp == 0 ? 0 : U.currentTimeMillis() - startTstamp;
- }
-
- /** {@inheritDoc} */
- @Override public UUID getLocalNodeId() {
- return ignite.cluster().localNode().id();
- }
-
/**
* @return Local node.
*/
@@ -180,11 +152,6 @@ public abstract class IgniteSpiAdapter implements IgniteSpi, IgniteSpiManagement
}
/** {@inheritDoc} */
- @Override public final String getIgniteHome() {
- return ignite.configuration().getIgniteHome();
- }
-
- /** {@inheritDoc} */
@Override public String getName() {
return name;
}
@@ -193,10 +160,13 @@ public abstract class IgniteSpiAdapter implements IgniteSpi, IgniteSpiManagement
* Sets SPI name.
*
* @param name SPI name.
+ * @return {@code this} for chaining.
*/
@IgniteSpiConfiguration(optional = true)
- public void setName(String name) {
+ public IgniteSpiAdapter setName(String name) {
this.name = name;
+
+ return this;
}
/** {@inheritDoc} */
@@ -351,7 +321,15 @@ public abstract class IgniteSpiAdapter implements IgniteSpi, IgniteSpiManagement
* @return Uniformly formatted message for SPI start.
*/
protected final String startInfo() {
- return "SPI started ok [startMs=" + getUpTime() + ", spiMBean=" + spiMBean + ']';
+ return "SPI started ok [startMs=" + startTstamp + ", spiMBean=" + spiMBean + ']';
+ }
+
+ /**
+ * Gets SPI startup time.
+ * @return Time in millis.
+ */
+ final long getStartTstamp() {
+ return startTstamp;
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfc88028/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiMBeanAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiMBeanAdapter.java b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiMBeanAdapter.java
new file mode 100644
index 0000000..8035333
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiMBeanAdapter.java
@@ -0,0 +1,78 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.spi;
+
+import java.text.DateFormat;
+import java.util.Date;
+import java.util.UUID;
+import org.apache.ignite.internal.util.typedef.X;
+import org.apache.ignite.internal.util.typedef.internal.U;
+
+/**
+ * This class provides convenient adapter for MBean implementations.
+ */
+public class IgniteSpiMBeanAdapter implements IgniteSpiManagementMBean {
+ /** */
+ protected IgniteSpiAdapter spiAdapter;
+
+ /**
+ * Constructor
+ *
+ * @param spiAdapter Spi implementation.
+ */
+ public IgniteSpiMBeanAdapter(IgniteSpiAdapter spiAdapter) {
+ this.spiAdapter = spiAdapter;
+ }
+
+ /** {@inheritDoc} */
+ @Override public final String getStartTimestampFormatted() {
+ return DateFormat.getDateTimeInstance().format(new Date(spiAdapter.getStartTstamp()));
+ }
+
+ /** {@inheritDoc} */
+ @Override public final String getUpTimeFormatted() {
+ return X.timeSpan2HMSM(getUpTime());
+ }
+
+ /** {@inheritDoc} */
+ @Override public final long getStartTimestamp() {
+ return spiAdapter.getStartTstamp();
+ }
+
+ /** {@inheritDoc} */
+ @Override public final long getUpTime() {
+ final long startTstamp = spiAdapter.getStartTstamp();
+
+ return startTstamp == 0 ? 0 : U.currentTimeMillis() - startTstamp;
+ }
+
+ /** {@inheritDoc} */
+ @Override public UUID getLocalNodeId() {
+ return spiAdapter.ignite.cluster().localNode().id();
+ }
+
+ /** {@inheritDoc} */
+ @Override public final String getIgniteHome() {
+ return spiAdapter.ignite.configuration().getIgniteHome();
+ }
+
+ /** {@inheritDoc} */
+ @Override public String getName() {
+ return spiAdapter.getName();
+ }
+}