Class CollectionConfig<T extends CollectionConfig>

    • Field Detail

      • DEFAULT_MAX_SIZE

        public static final int DEFAULT_MAX_SIZE
        Default maximum size for the Configuration.
        See Also:
        Constant Field Values
      • DEFAULT_SYNC_BACKUP_COUNT

        public static final int DEFAULT_SYNC_BACKUP_COUNT
        The default number of synchronous backups
        See Also:
        Constant Field Values
      • DEFAULT_ASYNC_BACKUP_COUNT

        public static final int DEFAULT_ASYNC_BACKUP_COUNT
        The default number of asynchronous backups
        See Also:
        Constant Field Values
    • Constructor Detail

      • CollectionConfig

        protected CollectionConfig()
    • Method Detail

      • getName

        public java.lang.String getName()
        Gets the name of this collection.
        Specified by:
        getName in interface NamedConfig
        Returns:
        the name of this collection
      • setName

        public T setName​(java.lang.String name)
        Sets the name of this collection.
        Specified by:
        setName in interface NamedConfig
        Parameters:
        name - the name of this collection
        Returns:
        the updated collection configuration
      • getItemListenerConfigs

        public java.util.List<ItemListenerConfig> getItemListenerConfigs()
        Gets the list of ItemListenerConfigs.
        Returns:
        the list of ItemListenerConfigs
      • setItemListenerConfigs

        public T setItemListenerConfigs​(java.util.List<ItemListenerConfig> listenerConfigs)
        Sets the list of ItemListenerConfigs.
        Parameters:
        listenerConfigs - the list of ItemListenerConfigs to set
        Returns:
        this collection configuration
      • getTotalBackupCount

        public int getTotalBackupCount()
        Gets the total number of synchronous and asynchronous backups for this collection.
        Returns:
        the total number of synchronous and asynchronous backups for this collection
      • getBackupCount

        public int getBackupCount()
        Gets the number of synchronous backups for this collection.
        Returns:
        the number of synchronous backups for this collection
      • setBackupCount

        public T setBackupCount​(int backupCount)
        Sets the number of synchronous backups for this collection.
        Parameters:
        backupCount - the number of synchronous backups to set for this collection
        Returns:
        the current CollectionConfig
        Throws:
        java.lang.IllegalArgumentException - if backupCount smaller than 0, or larger than the maximum number of backup or the sum of the backups and async backups is larger than the maximum number of backups
        See Also:
        setAsyncBackupCount(int)
      • getAsyncBackupCount

        public int getAsyncBackupCount()
        Gets the number of asynchronous backups.
        Returns:
        the number of asynchronous backups
      • setAsyncBackupCount

        public T setAsyncBackupCount​(int asyncBackupCount)
        Sets the number of asynchronous backups.
        Parameters:
        asyncBackupCount - the number of asynchronous synchronous backups to set
        Returns:
        the updated CollectionConfig
        Throws:
        java.lang.IllegalArgumentException - if asyncBackupCount is smaller than 0, or larger than the maximum number of backups, or the sum of the backups and async backups is larger than the maximum number of backups.
        See Also:
        setBackupCount(int), getAsyncBackupCount()
      • getMaxSize

        public int getMaxSize()
        Gets the maximum size for the Configuration.
        Returns:
        the maximum size for the Configuration
      • setMaxSize

        public T setMaxSize​(int maxSize)
        Sets the maximum size for the collection.
        Returns:
        the current CollectionConfig
      • isStatisticsEnabled

        public boolean isStatisticsEnabled()
        Checks if collection statistics are enabled.
        Returns:
        true if collection statistics are enabled, false otherwise
      • setStatisticsEnabled

        public T setStatisticsEnabled​(boolean statisticsEnabled)
        Sets collection statistics to enabled or disabled.
        Parameters:
        statisticsEnabled - true to enable collection statistics, false to disable
        Returns:
        the current collection config instance
      • addItemListenerConfig

        public T addItemListenerConfig​(ItemListenerConfig itemListenerConfig)
        Adds an item listener to this collection (listens for when items are added or removed).
        Parameters:
        itemListenerConfig - the item listener to add to this collection
        Returns:
        this configuration
      • getSplitBrainProtectionName

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

        public T setSplitBrainProtectionName​(java.lang.String splitBrainProtectionName)
        Sets the split brain protection name for operations.
        Parameters:
        splitBrainProtectionName - the split brain protection name
        Returns:
        the updated configuration
      • setMergePolicyConfig

        public T setMergePolicyConfig​(MergePolicyConfig mergePolicyConfig)
        Sets the MergePolicyConfig for the collection.
        Returns:
        the current CollectionConfig
      • writeData

        public void writeData​(ObjectDataOutput out)
                       throws java.io.IOException
        Description copied from interface: DataSerializable
        Writes object fields to output stream
        Specified by:
        writeData in interface DataSerializable
        Parameters:
        out - output
        Throws:
        java.io.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 java.io.IOException
        Description copied from interface: DataSerializable
        Reads fields from the input stream
        Specified by:
        readData in interface DataSerializable
        Parameters:
        in - input
        Throws:
        java.io.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​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public final int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • fieldsToString

        protected java.lang.String fieldsToString()
        Returns field names with values as concatenated String so it can be used in child classes' toString() methods.