Class DataStorageSpec.IntMebibytesBound

  • Enclosing class:
    DataStorageSpec

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

      • IntMebibytesBound

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

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

        public IntMebibytesBound​(long mebibytes)
        Creates a DataStorageSpec.IntMebibytesBound of the specified amount in mebibytes.
        Parameters:
        mebibytes - where mebibytes 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.
      • toMebibytes

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

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