org.apache.cassandra.db.marshal
Class AbstractType<T>
java.lang.Object
org.apache.cassandra.db.marshal.AbstractType<T>
- All Implemented Interfaces:
- java.util.Comparator<java.nio.ByteBuffer>
- Direct Known Subclasses:
- AbstractCommutativeType, AbstractCompositeType, AsciiType, BooleanType, BytesType, DateType, DecimalType, DoubleType, FloatType, Int32Type, IntegerType, LexicalUUIDType, LocalByPartionerType, LongType, ReversedType, TimeUUIDType, UTF8Type, UUIDType
public abstract class AbstractType<T>
- extends java.lang.Object
- implements java.util.Comparator<java.nio.ByteBuffer>
Specifies a Comparator for a specific type of ByteBuffer.
Note that empty ByteBuffer are used to represent "start at the beginning"
or "stop at the end" arguments to get_slice, so the Comparator
should always handle those values even if they normally do not
represent a valid ByteBuffer for the type being compared.
Method Summary |
abstract T |
compose(java.nio.ByteBuffer bytes)
|
abstract java.nio.ByteBuffer |
decompose(T value)
|
java.nio.ByteBuffer |
fromString(java.lang.String source)
get a byte representation of the given string. |
java.lang.String |
getColumnsString(java.util.Collection<IColumn> columns)
|
java.util.Comparator<java.nio.ByteBuffer> |
getReverseComparator()
Deprecated. use reverseComparator field instead |
abstract java.lang.String |
getString(java.nio.ByteBuffer bytes)
get a string representation of the bytes suitable for log messages |
java.lang.String |
getString(java.util.Collection<java.nio.ByteBuffer> names)
|
boolean |
isCommutative()
|
static AbstractType |
parseDefaultParameters(AbstractType baseType,
TypeParser parser)
|
java.lang.String |
toString()
This must be overriden by subclasses if necessary so that for any
AbstractType, this == TypeParser.parse(toString()). |
abstract void |
validate(java.nio.ByteBuffer bytes)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface java.util.Comparator |
compare, equals |
indexComparator
public final java.util.Comparator<IndexHelper.IndexInfo> indexComparator
indexReverseComparator
public final java.util.Comparator<IndexHelper.IndexInfo> indexReverseComparator
columnComparator
public final java.util.Comparator<IColumn> columnComparator
columnReverseComparator
public final java.util.Comparator<IColumn> columnReverseComparator
reverseComparator
public final java.util.Comparator<java.nio.ByteBuffer> reverseComparator
AbstractType
protected AbstractType()
compose
public abstract T compose(java.nio.ByteBuffer bytes)
decompose
public abstract java.nio.ByteBuffer decompose(T value)
getString
public abstract java.lang.String getString(java.nio.ByteBuffer bytes)
- get a string representation of the bytes suitable for log messages
fromString
public java.nio.ByteBuffer fromString(java.lang.String source)
throws MarshalException
- get a byte representation of the given string.
defaults to unsupportedoperation so people deploying custom Types can update at their leisure.
- Throws:
MarshalException
validate
public abstract void validate(java.nio.ByteBuffer bytes)
throws MarshalException
- Throws:
MarshalException
getReverseComparator
public java.util.Comparator<java.nio.ByteBuffer> getReverseComparator()
- Deprecated. use reverseComparator field instead
getString
public java.lang.String getString(java.util.Collection<java.nio.ByteBuffer> names)
getColumnsString
public java.lang.String getColumnsString(java.util.Collection<IColumn> columns)
isCommutative
public boolean isCommutative()
parseDefaultParameters
public static AbstractType parseDefaultParameters(AbstractType baseType,
TypeParser parser)
throws ConfigurationException
- Throws:
ConfigurationException
toString
public java.lang.String toString()
- This must be overriden by subclasses if necessary so that for any
AbstractType, this == TypeParser.parse(toString()).
Note that for backwards compatibility this includes the full classname.
For CQL purposes the short name is fine.
- Overrides:
toString
in class java.lang.Object
Copyright © 2012 The Apache Software Foundation