Class DataStorageSpec.IntKibibytesBound

  • Enclosing class:
    DataStorageSpec

    public static final class DataStorageSpec.IntKibibytesBound
    extends DataStorageSpec
    Represents a data storage quantity used for Cassandra configuration. The bound is [0, Integer.MAX_VALUE) in kibibytes. If the user sets a different unit - we still validate that converted to kibibytes the quantity will not exceed that upper bound. (CASSANDRA-17571)
    • Constructor Detail

      • IntKibibytesBound

        public IntKibibytesBound​(java.lang.String value)
        Creates a DataStorageSpec.IntKibibytesBound of the specified amount.
        Parameters:
        value - the data storage
      • IntKibibytesBound

        public IntKibibytesBound​(long quantity,
                                 DataStorageSpec.DataStorageUnit unit)
        Creates a DataStorageSpec.IntKibibytesBound of the specified amount in the specified unit.
        Parameters:
        quantity - where quantity shouldn't be bigger than Integer.MAX_VALUE - 1 in kibibytes
        unit - in which the provided quantity is
      • IntKibibytesBound

        public IntKibibytesBound​(long kibibytes)
        Creates a DataStorageSpec.IntKibibytesBound of the specified amount in kibibytes.
        Parameters:
        kibibytes - where kibibytes shouldn't be bigger than Integer.MAX_VALUE-1
    • Method Detail

      • toBytes

        public int toBytes()
        Returns the amount of data storage in bytes as an int
        Returns:
        the amount of data storage in bytes or Integer.MAX_VALUE if the number of bytes is too large.
      • toKibibytes

        public int toKibibytes()
        Returns the amount of data storage in kibibytes as an int
        Returns:
        the amount of data storage in kibibytes or Integer.MAX_VALUE if the number of kibibytes is too large.
      • toBytesInLong

        public long toBytesInLong()
        Returns:
        the amount of data storage in bytes.