Class DataStorageSpec.IntKibibytesBound

java.lang.Object
org.apache.cassandra.config.DataStorageSpec
org.apache.cassandra.config.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 Details

    • IntKibibytesBound

      public IntKibibytesBound(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 Details

    • 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.