CFMetaData (apache-cassandra API)
Date: 2014-10-21

org.apache.cassandra.config

## Class CFMetaData

- java.lang.Object
- - org.apache.cassandra.config.CFMetaData

-     public final class CFMetaData
      extends java.lang.Object

  This class can be tricky to modify. Please read http://wiki.apache.org/cassandra/ConfigurationNotes for how to do so safely.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `CFMetaData.SpeculativeRetry`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static CFMetaData` | `BatchlogCf`
    `java.util.UUID` | `cfId`
    `java.lang.String` | `cfName`
    `ColumnFamilyType` | `cfType`
    `static CFMetaData` | `CompactionHistoryCf`
    `static CFMetaData` | `CompactionLogCf`
    `java.lang.Class<? extends AbstractCompactionStrategy>` | `compactionStrategyClass`
    `java.util.Map<java.lang.String,java.lang.String>` | `compactionStrategyOptions`
    `CellNameType` | `comparator`
    `CompressionParameters` | `compressionParameters`
    `static CachingOptions` | `DEFAULT_CACHING_STRATEGY`
    `static java.lang.String` | `DEFAULT_COLUMN_ALIAS`
    `static java.lang.Class<? extends AbstractCompactionStrategy>` | `DEFAULT_COMPACTION_STRATEGY_CLASS`
    `static java.lang.String` | `DEFAULT_COMPRESSOR`
    `static double` | `DEFAULT_DCLOCAL_READ_REPAIR_CHANCE`
    `static int` | `DEFAULT_DEFAULT_TIME_TO_LIVE`
    `static int` | `DEFAULT_GC_GRACE_SECONDS`
    `static java.lang.String` | `DEFAULT_KEY_ALIAS`
    `static int` | `DEFAULT_MAX_COMPACTION_THRESHOLD`
    `static int` | `DEFAULT_MAX_INDEX_INTERVAL`
    `static int` | `DEFAULT_MIN_COMPACTION_THRESHOLD`
    `static int` | `DEFAULT_MIN_INDEX_INTERVAL`
    `static double` | `DEFAULT_READ_REPAIR_CHANCE`
    `static CFMetaData.SpeculativeRetry` | `DEFAULT_SPECULATIVE_RETRY`
    `static java.lang.String` | `DEFAULT_VALUE_ALIAS`
    `static CFMetaData` | `HintsCf`
    `static CFMetaData` | `IndexCf`
    `java.lang.String` | `ksName`
    `static CFMetaData` | `LocalCf`
    `static CFMetaData` | `PaxosCf`
    `static CFMetaData` | `PeerEventsCf`
    `static CFMetaData` | `PeersCf`
    `static CFMetaData` | `RangeXfersCf`
    `static CFMetaData` | `SchemaColumnFamiliesCf`
    `static CFMetaData` | `SchemaColumnsCf`
    `static CFMetaData` | `SchemaKeyspacesCf`
    `static CFMetaData` | `SchemaTriggersCf`
    `static CFMetaData` | `SchemaUserTypesCf`
    `static CFMetaData` | `SSTableActivityCF`
    `static CFMetaData` | `TraceEventsCf`
    `static CFMetaData` | `TraceSessionsCf`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `CFMetaData(java.lang.String keyspace, java.lang.String name, ColumnFamilyType type, CellNameType comp)` Create new ColumnFamily metadata with generated random ID.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `CFMetaData` | `addAllColumnDefinitions(java.util.Collection<ColumnDefinition> defs)`
    `CFMetaData` | `addColumnDefinition(ColumnDefinition def)`
    `void` | `addColumnMetadataFromAliases(java.util.List<java.nio.ByteBuffer> aliases, AbstractType<?> comparator, ColumnDefinition.Kind kind)`
    `void` | `addDefaultIndexNames()` Convert a null index_name to appropriate default name according to column status
    `CFMetaData` | `addOrReplaceColumnDefinition(ColumnDefinition def)`
    `void` | `addTriggerDefinition(TriggerDefinition def)`
    `java.util.Collection<ColumnDefinition>` | `allColumns()`
    `java.util.Iterator<ColumnDefinition>` | `allColumnsInSelectOrder()`
    `CFMetaData` | `bloomFilterFpChance(java.lang.Double prop)`
    `CFMetaData` | `caching(CachingOptions prop)`
    `java.util.List<ColumnDefinition>` | `clusteringColumns()`
    `CFMetaData` | `comment(java.lang.String prop)`
    `CFMetaData` | `compactionStrategyClass(java.lang.Class<? extends AbstractCompactionStrategy> prop)`
    `CFMetaData` | `compactionStrategyOptions(java.util.Map<java.lang.String,java.lang.String> prop)`
    `ColumnDefinition` | `compactValueColumn()`
    `static CFMetaData` | `compile(java.lang.String cql, java.lang.String keyspace)`
    `CompressionParameters` | `compressionParameters()`
    `CFMetaData` | `compressionParameters(CompressionParameters prop)`
    `boolean` | `containsTriggerDefinition(TriggerDefinition def)`
    `CFMetaData` | `copy()`
    `CFMetaData` | `copy(java.util.UUID newCfId)` Clones the CFMetaData, but sets a different cfId
    `static java.lang.Class<? extends AbstractCompactionStrategy>` | `createCompactionStrategy(java.lang.String className)`
    `AbstractCompactionStrategy` | `createCompactionStrategyInstance(ColumnFamilyStore cfs)`
    `CFMetaData` | `dcLocalReadRepairChance(double prop)`
    `CFMetaData` | `defaultTimeToLive(int prop)`
    `CFMetaData` | `defaultValidator(AbstractType<?> prop)`
    `static CFMetaData` | `denseCFMetaData(java.lang.String keyspace, java.lang.String name, AbstractType<?> comp)`
    `static CFMetaData` | `denseCFMetaData(java.lang.String keyspace, java.lang.String name, AbstractType<?> comp, AbstractType<?> subcc)`
    `Mutation` | `dropFromSchema(long timestamp)` Remove all CF attributes from schema
    `CFMetaData` | `droppedColumns(java.util.Map<ColumnIdentifier,java.lang.Long> cols)`
    `boolean` | `equals(java.lang.Object o)`
    `static CFMetaData` | `fromSchema(UntypedResultSet.Row result)` Deserialize CF metadata from low-level representation
    `static CFMetaData` | `fromThrift(CfDef cf_def)`
    `static CFMetaData` | `fromThriftCqlRow(CqlRow cf, CqlResult columnsRes)` Create CFMetaData from thrift `CqlRow` that contains columns from schema_columnfamilies.
    `static CFMetaData` | `fromThriftForUpdate(CfDef cf_def, CFMetaData toUpdate)`
    `CFMetaData` | `gcGraceSeconds(int prop)`
    `static java.util.UUID` | `generateLegacyCfId(java.lang.String ksName, java.lang.String cfName)` Generates deterministic UUID from keyspace/columnfamily name pair.
    `double` | `getBloomFilterFpChance()`
    `CachingOptions` | `getCaching()`
    `ColumnDefinition` | `getColumnDefinition(java.nio.ByteBuffer name)`
    `ColumnDefinition` | `getColumnDefinition(CellName cellName)` Returns a ColumnDefinition given a cell name.
    `ColumnDefinition` | `getColumnDefinition(ColumnIdentifier name)` Returns the ColumnDefinition for `name`.
    `AbstractType<?>` | `getColumnDefinitionComparator(ColumnDefinition def)`
    `ColumnDefinition` | `getColumnDefinitionForIndex(java.lang.String indexName)`
    `java.lang.String` | `getComment()`
    `AbstractType<?>` | `getComponentComparator(java.lang.Integer componentIndex, ColumnDefinition.Kind kind)`
    `java.lang.String` | `getCQL2KeyName()`
    `double` | `getDcLocalReadRepair()`
    `static java.lang.String` | `getDefaultIndexName(java.lang.String cfName, ColumnIdentifier columnName)`
    `int` | `getDefaultTimeToLive()`
    `AbstractType<?>` | `getDefaultValidator()`
    `java.util.Map<ColumnIdentifier,java.lang.Long>` | `getDroppedColumns()`
    `int` | `getGcGraceSeconds()`
    `java.lang.Boolean` | `getIsDense()`
    `AbstractType<?>` | `getKeyValidator()`
    `CType` | `getKeyValidatorAsCType()`
    `java.lang.Integer` | `getMaxCompactionThreshold()`
    `int` | `getMaxIndexInterval()`
    `int` | `getMemtableFlushPeriod()`
    `java.lang.Integer` | `getMinCompactionThreshold()`
    `int` | `getMinIndexInterval()`
    `AtomDeserializer` | `getOnDiskDeserializer(java.io.DataInput in, Descriptor.Version version)`
    `java.util.Iterator<OnDiskAtom>` | `getOnDiskIterator(java.io.DataInput in, ColumnSerializer.Flag flag, int expireBefore, Descriptor.Version version)`
    `java.util.Iterator<OnDiskAtom>` | `getOnDiskIterator(java.io.DataInput in, Descriptor.Version version)`
    `java.lang.String` | `getParentColumnFamilyName()`
    `double` | `getReadRepairChance()`
    `CFMetaData.SpeculativeRetry` | `getSpeculativeRetry()`
    `java.util.Map<java.lang.String,TriggerDefinition>` | `getTriggers()`
    `AbstractType<?>` | `getValueValidator(CellName cellName)`
    `int` | `hashCode()`
    `boolean` | `hasStaticColumns()`
    `java.lang.String` | `indexColumnFamilyName(ColumnDefinition info)` generate a column family name for an index corresponding to the given column.
    `boolean` | `isCounter()`
    `boolean` | `isCQL3Table()`
    `CFMetaData` | `isDense(java.lang.Boolean prop)`
    `static boolean` | `isIndexNameValid(java.lang.String name)`
    `static boolean` | `isNameValid(java.lang.String name)`
    `boolean` | `isPurged()`
    `boolean` | `isSecondaryIndex()` The '.' char is the only way to identify if the CFMetadata is for a secondary index
    `boolean` | `isSuper()`
    `boolean` | `isThriftCompatible()` Returns whether this CFMetaData can be returned to thrift.
    `CFMetaData` | `keyValidator(AbstractType<?> prop)`
    `CFMetaData` | `maxCompactionThreshold(int prop)`
    `CFMetaData` | `maxIndexInterval(int prop)`
    `CFMetaData` | `memtableFlushPeriod(int prop)`
    `CFMetaData` | `minCompactionThreshold(int prop)`
    `CFMetaData` | `minIndexInterval(int prop)`
    `static CFMetaData` | `newIndexMetadata(CFMetaData parent, ColumnDefinition info, CellNameType indexComparator)` Creates CFMetaData for secondary index CF.
    `ReadRepairDecision` | `newReadRepairDecision()`
    `java.util.List<ColumnDefinition>` | `partitionKeyColumns()`
    `CFMetaData` | `readRepairChance(double prop)`
    `CFMetaData` | `rebuild()`
    `void` | `recordColumnDrop(ColumnDefinition def)`
    `java.lang.Iterable<ColumnDefinition>` | `regularAndStaticColumns()`
    `java.util.Set<ColumnDefinition>` | `regularColumns()`
    `void` | `reload()`
    `CFMetaData` | `reloadSecondaryIndexMetadata(CFMetaData parent)`
    `boolean` | `removeColumnDefinition(ColumnDefinition def)`
    `boolean` | `removeTrigger(java.lang.String name)`
    `void` | `renameColumn(ColumnIdentifier from, ColumnIdentifier to)`
    `static CFMetaData` | `sparseCFMetaData(java.lang.String keyspace, java.lang.String name, AbstractType<?> comp)`
    `CFMetaData` | `speculativeRetry(CFMetaData.SpeculativeRetry prop)`
    `java.util.Set<ColumnDefinition>` | `staticColumns()`
    `Mutation` | `toSchema(long timestamp)` Convert current metadata into schema mutation
    `void` | `toSchema(Mutation mutation, long timestamp)`
    `Mutation` | `toSchemaUpdate(CFMetaData newState, long modificationTimestamp, boolean fromThrift)` Create schema mutations to update this metadata to provided new state.
    `java.lang.String` | `toString()`
    `CfDef` | `toThrift()`
    `CFMetaData` | `triggers(java.util.Map<java.lang.String,TriggerDefinition> prop)`
    `CFMetaData` | `validate()`
    `static void` | `validateCompactionOptions(java.lang.Class<? extends AbstractCompactionStrategy> strategyClass, java.util.Map<java.lang.String,java.lang.String> options)`
    `void` | `validateCompatility(CFMetaData cfm)`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### DEFAULT_READ_REPAIR_CHANCE

          public static final double DEFAULT_READ_REPAIR_CHANCE

      See Also:
        Constant Field Values

    - #### DEFAULT_DCLOCAL_READ_REPAIR_CHANCE

          public static final double DEFAULT_DCLOCAL_READ_REPAIR_CHANCE

      See Also:
        Constant Field Values

    - #### DEFAULT_GC_GRACE_SECONDS

          public static final int DEFAULT_GC_GRACE_SECONDS

      See Also:
        Constant Field Values

    - #### DEFAULT_MIN_COMPACTION_THRESHOLD

          public static final int DEFAULT_MIN_COMPACTION_THRESHOLD

      See Also:
        Constant Field Values

    - #### DEFAULT_MAX_COMPACTION_THRESHOLD

          public static final int DEFAULT_MAX_COMPACTION_THRESHOLD

      See Also:
        Constant Field Values

    - #### DEFAULT_COMPACTION_STRATEGY_CLASS

          public static final java.lang.Class<? extends AbstractCompactionStrategy> DEFAULT_COMPACTION_STRATEGY_CLASS

    - #### DEFAULT_CACHING_STRATEGY

          public static final CachingOptions DEFAULT_CACHING_STRATEGY

    - #### DEFAULT_DEFAULT_TIME_TO_LIVE

          public static final int DEFAULT_DEFAULT_TIME_TO_LIVE

      See Also:
        Constant Field Values

    - #### DEFAULT_SPECULATIVE_RETRY

          public static final CFMetaData.SpeculativeRetry DEFAULT_SPECULATIVE_RETRY

    - #### DEFAULT_MIN_INDEX_INTERVAL

          public static final int DEFAULT_MIN_INDEX_INTERVAL

      See Also:
        Constant Field Values

    - #### DEFAULT_MAX_INDEX_INTERVAL

          public static final int DEFAULT_MAX_INDEX_INTERVAL

      See Also:
        Constant Field Values

    - #### DEFAULT_COMPRESSOR

          public static final java.lang.String DEFAULT_COMPRESSOR

    - #### IndexCf

          public static final CFMetaData IndexCf

    - #### SchemaKeyspacesCf

          public static final CFMetaData SchemaKeyspacesCf

    - #### SchemaColumnFamiliesCf

          public static final CFMetaData SchemaColumnFamiliesCf

    - #### SchemaColumnsCf

          public static final CFMetaData SchemaColumnsCf

    - #### SchemaTriggersCf

          public static final CFMetaData SchemaTriggersCf

    - #### SchemaUserTypesCf

          public static final CFMetaData SchemaUserTypesCf

    - #### HintsCf

          public static final CFMetaData HintsCf

    - #### PeersCf

          public static final CFMetaData PeersCf

    - #### PeerEventsCf

          public static final CFMetaData PeerEventsCf

    - #### LocalCf

          public static final CFMetaData LocalCf

    - #### TraceSessionsCf

          public static final CFMetaData TraceSessionsCf

    - #### TraceEventsCf

          public static final CFMetaData TraceEventsCf

    - #### BatchlogCf

          public static final CFMetaData BatchlogCf

    - #### RangeXfersCf

          public static final CFMetaData RangeXfersCf

    - #### CompactionLogCf

          public static final CFMetaData CompactionLogCf

    - #### PaxosCf

          public static final CFMetaData PaxosCf

    - #### SSTableActivityCF

          public static final CFMetaData SSTableActivityCF

    - #### CompactionHistoryCf

          public static final CFMetaData CompactionHistoryCf

    - #### cfId

          public final java.util.UUID cfId

    - #### ksName

          public final java.lang.String ksName

    - #### cfName

          public final java.lang.String cfName

    - #### cfType

          public final ColumnFamilyType cfType

    - #### comparator

          public volatile CellNameType comparator

    - #### DEFAULT_KEY_ALIAS

          public static final java.lang.String DEFAULT_KEY_ALIAS

      See Also:
        Constant Field Values

    - #### DEFAULT_COLUMN_ALIAS

          public static final java.lang.String DEFAULT_COLUMN_ALIAS

      See Also:
        Constant Field Values

    - #### DEFAULT_VALUE_ALIAS

          public static final java.lang.String DEFAULT_VALUE_ALIAS

      See Also:
        Constant Field Values

    - #### compactionStrategyClass

          public volatile java.lang.Class<? extends AbstractCompactionStrategy> compactionStrategyClass

    - #### compactionStrategyOptions

          public volatile java.util.Map<java.lang.String,java.lang.String> compactionStrategyOptions

    - #### compressionParameters

          public volatile CompressionParameters compressionParameters

  - ### Constructor Detail

    - #### CFMetaData

          public CFMetaData(java.lang.String keyspace,
                    java.lang.String name,
                    ColumnFamilyType type,
                    CellNameType comp)

      Create new ColumnFamily metadata with generated random ID. When loading from existing schema, use CFMetaData
      Parameters:
        `keyspace` - keyspace name
        `name` - column family name
        `comp` - default comparator

  - ### Method Detail

    - #### comment

          public CFMetaData comment(java.lang.String prop)

    - #### readRepairChance

          public CFMetaData readRepairChance(double prop)

    - #### dcLocalReadRepairChance

          public CFMetaData dcLocalReadRepairChance(double prop)

    - #### gcGraceSeconds

          public CFMetaData gcGraceSeconds(int prop)

    - #### defaultValidator

          public CFMetaData defaultValidator(AbstractType<?> prop)

    - #### keyValidator

          public CFMetaData keyValidator(AbstractType<?> prop)

    - #### minCompactionThreshold

          public CFMetaData minCompactionThreshold(int prop)

    - #### maxCompactionThreshold

          public CFMetaData maxCompactionThreshold(int prop)

    - #### compactionStrategyClass

          public CFMetaData compactionStrategyClass(java.lang.Class<? extends AbstractCompactionStrategy> prop)

    - #### compactionStrategyOptions

          public CFMetaData compactionStrategyOptions(java.util.Map<java.lang.String,java.lang.String> prop)

    - #### compressionParameters

          public CFMetaData compressionParameters(CompressionParameters prop)

    - #### bloomFilterFpChance

          public CFMetaData bloomFilterFpChance(java.lang.Double prop)

    - #### caching

          public CFMetaData caching(CachingOptions prop)

    - #### minIndexInterval

          public CFMetaData minIndexInterval(int prop)

    - #### maxIndexInterval

          public CFMetaData maxIndexInterval(int prop)

    - #### memtableFlushPeriod

          public CFMetaData memtableFlushPeriod(int prop)

    - #### defaultTimeToLive

          public CFMetaData defaultTimeToLive(int prop)

    - #### speculativeRetry

          public CFMetaData speculativeRetry(CFMetaData.SpeculativeRetry prop)

    - #### droppedColumns

          public CFMetaData droppedColumns(java.util.Map<ColumnIdentifier,java.lang.Long> cols)

    - #### triggers

          public CFMetaData triggers(java.util.Map<java.lang.String,TriggerDefinition> prop)

    - #### isDense

          public CFMetaData isDense(java.lang.Boolean prop)

    - #### denseCFMetaData

          public static CFMetaData denseCFMetaData(java.lang.String keyspace,
                                   java.lang.String name,
                                   AbstractType<?> comp,
                                   AbstractType<?> subcc)

    - #### sparseCFMetaData

          public static CFMetaData sparseCFMetaData(java.lang.String keyspace,
                                    java.lang.String name,
                                    AbstractType<?> comp)

    - #### denseCFMetaData

          public static CFMetaData denseCFMetaData(java.lang.String keyspace,
                                   java.lang.String name,
                                   AbstractType<?> comp)

    - #### getTriggers

          public java.util.Map<java.lang.String,TriggerDefinition> getTriggers()

    - #### compile

          public static CFMetaData compile(java.lang.String cql,
                           java.lang.String keyspace)

    - #### generateLegacyCfId

          public static java.util.UUID generateLegacyCfId(java.lang.String ksName,
                                          java.lang.String cfName)

      Generates deterministic UUID from keyspace/columnfamily name pair. This is used to generate the same UUID for C* version < 2.1 Since 2.1, this is only used for system columnfamilies and tests.

    - #### newIndexMetadata

          public static CFMetaData newIndexMetadata(CFMetaData parent,
                                    ColumnDefinition info,
                                    CellNameType indexComparator)

      Creates CFMetaData for secondary index CF. Secondary index CF has the same CF ID as parent's.
      Parameters:
        `parent` - Parent CF where secondary index is created
        `info` - Column definition containing secondary index definition
        `indexComparator` - Comparator for secondary index
      Returns:
        CFMetaData for secondary index

    - #### reloadSecondaryIndexMetadata

          public CFMetaData reloadSecondaryIndexMetadata(CFMetaData parent)

    - #### copy

          public CFMetaData copy()

    - #### copy

          public CFMetaData copy(java.util.UUID newCfId)

      Clones the CFMetaData, but sets a different cfId
      Parameters:
        `newCfId` - the cfId for the cloned CFMetaData
      Returns:
        the cloned CFMetaData instance with the new cfId

    - #### indexColumnFamilyName

          public java.lang.String indexColumnFamilyName(ColumnDefinition info)

      generate a column family name for an index corresponding to the given column. This is NOT the same as the index's name! This is only used in sstable filenames and is not exposed to users.
      Parameters:
        `info` - A definition of the column with index
      Returns:
        name of the index ColumnFamily

    - #### getComment

          public java.lang.String getComment()

    - #### isSuper

          public boolean isSuper()

    - #### isSecondaryIndex

          public boolean isSecondaryIndex()

      The '.' char is the only way to identify if the CFMetadata is for a secondary index

    - #### getParentColumnFamilyName

          public java.lang.String getParentColumnFamilyName()

      Returns:
        The name of the parent cf if this is a seconday index

    - #### getReadRepairChance

          public double getReadRepairChance()

    - #### getDcLocalReadRepair

          public double getDcLocalReadRepair()

    - #### newReadRepairDecision

          public ReadRepairDecision newReadRepairDecision()

    - #### getGcGraceSeconds

          public int getGcGraceSeconds()

    - #### getDefaultValidator

          public AbstractType<?> getDefaultValidator()

    - #### getKeyValidator

          public AbstractType<?> getKeyValidator()

    - #### getMinCompactionThreshold

          public java.lang.Integer getMinCompactionThreshold()

    - #### getMaxCompactionThreshold

          public java.lang.Integer getMaxCompactionThreshold()

    - #### getCQL2KeyName

          public java.lang.String getCQL2KeyName()

    - #### compressionParameters

          public CompressionParameters compressionParameters()

    - #### allColumns

          public java.util.Collection<ColumnDefinition> allColumns()

    - #### allColumnsInSelectOrder

          public java.util.Iterator<ColumnDefinition> allColumnsInSelectOrder()

    - #### partitionKeyColumns

          public java.util.List<ColumnDefinition> partitionKeyColumns()

    - #### clusteringColumns

          public java.util.List<ColumnDefinition> clusteringColumns()

    - #### regularColumns

          public java.util.Set<ColumnDefinition> regularColumns()

    - #### staticColumns

          public java.util.Set<ColumnDefinition> staticColumns()

    - #### regularAndStaticColumns

          public java.lang.Iterable<ColumnDefinition> regularAndStaticColumns()

    - #### compactValueColumn

          public ColumnDefinition compactValueColumn()

    - #### getKeyValidatorAsCType

          public CType getKeyValidatorAsCType()

    - #### getBloomFilterFpChance

          public double getBloomFilterFpChance()

    - #### getCaching

          public CachingOptions getCaching()

    - #### getMinIndexInterval

          public int getMinIndexInterval()

    - #### getMaxIndexInterval

          public int getMaxIndexInterval()

    - #### getSpeculativeRetry

          public CFMetaData.SpeculativeRetry getSpeculativeRetry()

    - #### getMemtableFlushPeriod

          public int getMemtableFlushPeriod()

    - #### getDefaultTimeToLive

          public int getDefaultTimeToLive()

    - #### getDroppedColumns

          public java.util.Map<ColumnIdentifier,java.lang.Long> getDroppedColumns()

    - #### getIsDense

          public java.lang.Boolean getIsDense()

    - #### equals

          public boolean equals(java.lang.Object o)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`

    - #### getValueValidator

          public AbstractType<?> getValueValidator(CellName cellName)

    - #### fromThrift

          public static CFMetaData fromThrift(CfDef cf_def)
                                       throws InvalidRequestException,
                                              ConfigurationException

      Throws:
        `InvalidRequestException`
        `ConfigurationException`

    - #### fromThriftForUpdate

          public static CFMetaData fromThriftForUpdate(CfDef cf_def,
                                       CFMetaData toUpdate)
                                                throws InvalidRequestException,
                                                       ConfigurationException

      Throws:
        `InvalidRequestException`
        `ConfigurationException`

    - #### fromThriftCqlRow

          public static CFMetaData fromThriftCqlRow(CqlRow cf,
                                    CqlResult columnsRes)

      Create CFMetaData from thrift `CqlRow` that contains columns from schema_columnfamilies.
      Parameters:
        `columnsRes` - CqlRow containing columns from schema_columnfamilies.
      Returns:
        CFMetaData derived from CqlRow

    - #### reload

          public void reload()

    - #### validateCompatility

          public void validateCompatility(CFMetaData cfm)
                                   throws ConfigurationException

      Throws:
        `ConfigurationException`

    - #### validateCompactionOptions

          public static void validateCompactionOptions(java.lang.Class<? extends AbstractCompactionStrategy> strategyClass,
                                       java.util.Map<java.lang.String,java.lang.String> options)
                                                throws ConfigurationException

      Throws:
        `ConfigurationException`

    - #### createCompactionStrategy

          public static java.lang.Class<? extends AbstractCompactionStrategy> createCompactionStrategy(java.lang.String className)
                                                                                                throws ConfigurationException

      Throws:
        `ConfigurationException`

    - #### createCompactionStrategyInstance

          public AbstractCompactionStrategy createCompactionStrategyInstance(ColumnFamilyStore cfs)

    - #### toThrift

          public CfDef toThrift()

    - #### getColumnDefinition

          public ColumnDefinition getColumnDefinition(ColumnIdentifier name)

      Returns the ColumnDefinition for `name`.

    - #### getColumnDefinition

          public ColumnDefinition getColumnDefinition(java.nio.ByteBuffer name)

    - #### getColumnDefinition

          public ColumnDefinition getColumnDefinition(CellName cellName)

      Returns a ColumnDefinition given a cell name.

    - #### getColumnDefinitionForIndex

          public ColumnDefinition getColumnDefinitionForIndex(java.lang.String indexName)

    - #### addDefaultIndexNames

          public void addDefaultIndexNames()
                                    throws ConfigurationException

      Convert a null index_name to appropriate default name according to column status
      Throws:
        `ConfigurationException`

    - #### getDefaultIndexName

          public static java.lang.String getDefaultIndexName(java.lang.String cfName,
                                             ColumnIdentifier columnName)

    - #### getOnDiskIterator

          public java.util.Iterator<OnDiskAtom> getOnDiskIterator(java.io.DataInput in,
                                                         Descriptor.Version version)

    - #### getOnDiskIterator

          public java.util.Iterator<OnDiskAtom> getOnDiskIterator(java.io.DataInput in,
                                                         ColumnSerializer.Flag flag,
                                                         int expireBefore,
                                                         Descriptor.Version version)

    - #### getOnDiskDeserializer

          public AtomDeserializer getOnDiskDeserializer(java.io.DataInput in,
                                               Descriptor.Version version)

    - #### isNameValid

          public static boolean isNameValid(java.lang.String name)

    - #### isIndexNameValid

          public static boolean isIndexNameValid(java.lang.String name)

    - #### validate

          public CFMetaData validate()
                              throws ConfigurationException

      Throws:
        `ConfigurationException`

    - #### toSchemaUpdate

          public Mutation toSchemaUpdate(CFMetaData newState,
                                long modificationTimestamp,
                                boolean fromThrift)

      Create schema mutations to update this metadata to provided new state.
      Parameters:
        `newState` - The new metadata (for the same CF)
        `modificationTimestamp` - Timestamp to use for mutation
        `fromThrift` - whether the newState comes from thrift
      Returns:
        Difference between attributes in form of schema mutation

    - #### dropFromSchema

          public Mutation dropFromSchema(long timestamp)

      Remove all CF attributes from schema
      Parameters:
        `timestamp` - Timestamp to use
      Returns:
        Mutation to use to completely remove cf from schema

    - #### isPurged

          public boolean isPurged()

    - #### toSchema

          public void toSchema(Mutation mutation,
                      long timestamp)

    - #### addColumnMetadataFromAliases

          public void addColumnMetadataFromAliases(java.util.List<java.nio.ByteBuffer> aliases,
                                          AbstractType<?> comparator,
                                          ColumnDefinition.Kind kind)

    - #### fromSchema

          public static CFMetaData fromSchema(UntypedResultSet.Row result)

      Deserialize CF metadata from low-level representation
      Returns:
        Thrift-based metadata deserialized from schema

    - #### toSchema

          public Mutation toSchema(long timestamp)
                            throws ConfigurationException

      Convert current metadata into schema mutation
      Parameters:
        `timestamp` - Timestamp to use
      Returns:
        Low-level representation of the CF
      Throws:
        `ConfigurationException` - if any of the attributes didn't pass validation

    - #### getColumnDefinitionComparator

          public AbstractType<?> getColumnDefinitionComparator(ColumnDefinition def)

    - #### getComponentComparator

          public AbstractType<?> getComponentComparator(java.lang.Integer componentIndex,
                                               ColumnDefinition.Kind kind)

    - #### addAllColumnDefinitions

          public CFMetaData addAllColumnDefinitions(java.util.Collection<ColumnDefinition> defs)

    - #### addColumnDefinition

          public CFMetaData addColumnDefinition(ColumnDefinition def)
                                         throws ConfigurationException

      Throws:
        `ConfigurationException`

    - #### addOrReplaceColumnDefinition

          public CFMetaData addOrReplaceColumnDefinition(ColumnDefinition def)

    - #### removeColumnDefinition

          public boolean removeColumnDefinition(ColumnDefinition def)

    - #### addTriggerDefinition

          public void addTriggerDefinition(TriggerDefinition def)
                                    throws InvalidRequestException

      Throws:
        `InvalidRequestException`

    - #### containsTriggerDefinition

          public boolean containsTriggerDefinition(TriggerDefinition def)

    - #### removeTrigger

          public boolean removeTrigger(java.lang.String name)

    - #### recordColumnDrop

          public void recordColumnDrop(ColumnDefinition def)

    - #### renameColumn

          public void renameColumn(ColumnIdentifier from,
                          ColumnIdentifier to)
                            throws InvalidRequestException

      Throws:
        `InvalidRequestException`

    - #### rebuild

          public CFMetaData rebuild()

    - #### isCQL3Table

          public boolean isCQL3Table()

    - #### isThriftCompatible

          public boolean isThriftCompatible()

      Returns whether this CFMetaData can be returned to thrift.

    - #### isCounter

          public boolean isCounter()

    - #### hasStaticColumns

          public boolean hasStaticColumns()

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

Copyright © 2014 The Apache Software Foundation