Class ExecutorConfig

java.lang.Object
com.hazelcast.config.ExecutorConfig
All Implemented Interfaces:
NamedConfig, UserCodeNamespaceAwareConfig<ExecutorConfig>, DataSerializable, IdentifiedDataSerializable, com.hazelcast.nio.serialization.impl.Versioned

public class ExecutorConfig extends Object implements IdentifiedDataSerializable, NamedConfig, com.hazelcast.nio.serialization.impl.Versioned, UserCodeNamespaceAwareConfig<ExecutorConfig>
Contains the configuration for an IExecutorService.
  • Field Details

    • DEFAULT_POOL_SIZE

      public static final int DEFAULT_POOL_SIZE
      The number of executor threads per Member for the Executor based on this configuration.
      See Also:
    • DEFAULT_QUEUE_CAPACITY

      public static final int DEFAULT_QUEUE_CAPACITY
      Capacity of queue.
      See Also:
  • Constructor Details

    • ExecutorConfig

      public ExecutorConfig()
    • ExecutorConfig

      public ExecutorConfig(String name)
    • ExecutorConfig

      public ExecutorConfig(String name, int poolSize)
    • ExecutorConfig

      public ExecutorConfig(ExecutorConfig config)
  • Method Details

    • getName

      public String getName()
      Gets the name of the executor task.
      Specified by:
      getName in interface NamedConfig
      Returns:
      the name of the executor task
    • setName

      public ExecutorConfig setName(String name)
      Sets the name of the executor task.
      Specified by:
      setName in interface NamedConfig
      Parameters:
      name - the name of the executor task
      Returns:
      this executor config instance
    • getPoolSize

      public int getPoolSize()
      Gets the number of executor threads per member for the executor.
      Returns:
      the number of executor threads per member for the executor
    • setPoolSize

      public ExecutorConfig setPoolSize(int poolSize)
      Sets the number of executor threads per member for the executor.
      Parameters:
      poolSize - the number of executor threads per member for the executor
      Returns:
      this executor config instance
    • getQueueCapacity

      public int getQueueCapacity()
      Gets the queue capacity of the executor task. 0 means Integer.MAX_VALUE.
      Returns:
      Queue capacity of the executor task. 0 means Integer.MAX_VALUE
    • setQueueCapacity

      public ExecutorConfig setQueueCapacity(int queueCapacity)
      Sets the queue capacity of the executor task. 0 means Integer.MAX_VALUE.
      Parameters:
      queueCapacity - Queue capacity of the executor task. 0 means Integer.MAX_VALUE
      Returns:
      this executor config instance
    • isStatisticsEnabled

      public boolean isStatisticsEnabled()
      Returns:
      true if statistics gathering is enabled on the executor task (default), false otherwise
    • setStatisticsEnabled

      public ExecutorConfig setStatisticsEnabled(boolean statisticsEnabled)
      Enables or disables statistics gathering on the executor task.
      Parameters:
      statisticsEnabled - true if statistics gathering is enabled on the executor task, false otherwise
      Returns:
      this executor config instance
    • getSplitBrainProtectionName

      public String getSplitBrainProtectionName()
      Returns the split brain protection name for operations.
      Returns:
      the split brain protection name
    • setSplitBrainProtectionName

      public ExecutorConfig setSplitBrainProtectionName(String splitBrainProtectionName)
      Sets the split brain protection name for operations.
      Parameters:
      splitBrainProtectionName - the split brain protection name
      Returns:
      the updated configuration
    • getUserCodeNamespace

      @Nullable public String getUserCodeNamespace()
      Retrieve the User Code Deployment Namespace to be used for ClassLoader awareness during operations related to the structure associated with this configuration.
      Specified by:
      getUserCodeNamespace in interface UserCodeNamespaceAwareConfig<ExecutorConfig>
      Returns:
      Namespace Name for use with the UserCodeNamespaceService, or null if there is no User Code Namespace to associate with.
    • setUserCodeNamespace

      public ExecutorConfig setUserCodeNamespace(@Nullable String userCodeNamespace)
      Associates the provided Namespace Name with this structure for ClassLoader awareness.

      The behaviour of setting this to null is outlined in the documentation for UserCodeNamespaceAwareConfig.DEFAULT_NAMESPACE.

      Specified by:
      setUserCodeNamespace in interface UserCodeNamespaceAwareConfig<ExecutorConfig>
      Parameters:
      userCodeNamespace - The ID of the Namespace to associate with this structure.
      Returns:
      the updated ExecutorConfig instance
      Since:
      5.4
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getFactoryId

      public int getFactoryId()
      Description copied from interface: IdentifiedDataSerializable
      Returns DataSerializableFactory factory ID for this class.
      Specified by:
      getFactoryId in interface IdentifiedDataSerializable
      Returns:
      factory ID
    • getClassId

      public int getClassId()
      Description copied from interface: IdentifiedDataSerializable
      Returns type identifier for this class. It should be unique per DataSerializableFactory.
      Specified by:
      getClassId in interface IdentifiedDataSerializable
      Returns:
      type ID
    • writeData

      public void writeData(ObjectDataOutput out) throws IOException
      Description copied from interface: DataSerializable
      Writes object fields to output stream
      Specified by:
      writeData in interface DataSerializable
      Parameters:
      out - output
      Throws:
      IOException - if an I/O error occurs. In particular, an IOException may be thrown if the output stream has been closed.
    • readData

      public void readData(ObjectDataInput in) throws IOException
      Description copied from interface: DataSerializable
      Reads fields from the input stream
      Specified by:
      readData in interface DataSerializable
      Parameters:
      in - input
      Throws:
      IOException - if an I/O error occurs. In particular, an IOException may be thrown if the input stream has been closed.
    • equals

      public final boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object