public abstract class AbstractType<T>
extends java.lang.Object
implements java.util.Comparator<java.nio.ByteBuffer>
Modifier and Type | Field and Description |
---|---|
java.util.Comparator<java.nio.ByteBuffer> |
reverseComparator |
Modifier | Constructor and Description |
---|---|
protected |
AbstractType() |
Modifier and Type | Method and Description |
---|---|
CQL3Type |
asCQL3Type() |
static java.util.List<java.lang.String> |
asCQLTypeStringList(java.util.List<AbstractType<?>> abstractTypes) |
int |
compareCollectionMembers(java.nio.ByteBuffer v1,
java.nio.ByteBuffer v2,
java.nio.ByteBuffer collectionName)
An alternative comparison function used by CollectionsType in conjunction with CompositeType.
|
int |
compareForCQL(java.nio.ByteBuffer v1,
java.nio.ByteBuffer v2)
Same as compare except that this ignore ReversedType.
|
int |
componentsCount()
The number of subcomponents this type has.
|
T |
compose(java.nio.ByteBuffer bytes) |
java.nio.ByteBuffer |
decompose(T value) |
AbstractType<?> |
freeze() |
abstract Term |
fromJSONObject(java.lang.Object parsed)
Given a parsed JSON string, return a byte representation of the object.
|
abstract java.nio.ByteBuffer |
fromString(java.lang.String source)
get a byte representation of the given string.
|
java.util.List<AbstractType<?>> |
getComponents()
Return a list of the "subcomponents" this type has.
|
abstract TypeSerializer<T> |
getSerializer() |
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 |
isByteOrderComparable() |
boolean |
isCollection() |
boolean |
isCompatibleWith(AbstractType<?> previous)
Returns true if this comparator is compatible with the provided
previous comparator, that is if previous can safely be replaced by this.
|
boolean |
isCounter() |
boolean |
isEmptyValueMeaningless()
|
boolean |
isFrozenCollection() |
boolean |
isMultiCell() |
boolean |
isValueCompatibleWith(AbstractType<?> otherType)
Returns true if values of the other AbstractType can be read and "reasonably" interpreted by the this
AbstractType.
|
protected boolean |
isValueCompatibleWithInternal(AbstractType<?> otherType)
Needed to handle ReversedType in value-compatibility checks.
|
static AbstractType<?> |
parseDefaultParameters(AbstractType<?> baseType,
TypeParser parser) |
java.nio.ByteBuffer |
readValue(DataInputPlus in) |
void |
skipValue(DataInputPlus in) |
java.lang.String |
toJSONString(java.nio.ByteBuffer buffer,
int protocolVersion)
Converts a value to a JSON string.
|
java.lang.String |
toString()
This must be overriden by subclasses if necessary so that for any
AbstractType, this == TypeParser.parse(toString()).
|
java.lang.String |
toString(boolean ignoreFreezing) |
void |
validate(java.nio.ByteBuffer bytes) |
void |
validateCellValue(java.nio.ByteBuffer cellValue)
Validate cell value.
|
void |
validateCollectionMember(java.nio.ByteBuffer bytes,
java.nio.ByteBuffer collectionName)
An alternative validation function used by CollectionsType in conjunction with CompositeType.
|
protected int |
valueLengthIfFixed()
The length of values for this type if all values are of fixed length, -1 otherwise.
|
void |
writeValue(java.nio.ByteBuffer value,
DataOutputPlus out) |
long |
writtenLength(java.nio.ByteBuffer value) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
compare, comparing, comparing, comparingDouble, comparingInt, comparingLong, equals, naturalOrder, nullsFirst, nullsLast, reversed, reverseOrder, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
public final java.util.Comparator<java.nio.ByteBuffer> reverseComparator
public static java.util.List<java.lang.String> asCQLTypeStringList(java.util.List<AbstractType<?>> abstractTypes)
public T compose(java.nio.ByteBuffer bytes)
public java.nio.ByteBuffer decompose(T value)
public java.lang.String getString(java.nio.ByteBuffer bytes)
public abstract java.nio.ByteBuffer fromString(java.lang.String source) throws MarshalException
MarshalException
public abstract Term fromJSONObject(java.lang.Object parsed) throws MarshalException
parsed
- the result of parsing a json stringMarshalException
public java.lang.String toJSONString(java.nio.ByteBuffer buffer, int protocolVersion)
public void validate(java.nio.ByteBuffer bytes) throws MarshalException
MarshalException
public void validateCellValue(java.nio.ByteBuffer cellValue) throws MarshalException
cellValue
- ByteBuffer representing cell valueMarshalException
public CQL3Type asCQL3Type()
public int compareForCQL(java.nio.ByteBuffer v1, java.nio.ByteBuffer v2)
public abstract TypeSerializer<T> getSerializer()
public java.lang.String getString(java.util.Collection<java.nio.ByteBuffer> names)
public boolean isCounter()
public boolean isFrozenCollection()
public static AbstractType<?> parseDefaultParameters(AbstractType<?> baseType, TypeParser parser) throws SyntaxException
SyntaxException
public boolean isCompatibleWith(AbstractType<?> previous)
public boolean isValueCompatibleWith(AbstractType<?> otherType)
protected boolean isValueCompatibleWithInternal(AbstractType<?> otherType)
public boolean isByteOrderComparable()
public int compareCollectionMembers(java.nio.ByteBuffer v1, java.nio.ByteBuffer v2, java.nio.ByteBuffer collectionName)
public void validateCollectionMember(java.nio.ByteBuffer bytes, java.nio.ByteBuffer collectionName) throws MarshalException
MarshalException
public boolean isCollection()
public boolean isMultiCell()
public AbstractType<?> freeze()
public boolean isEmptyValueMeaningless()
public java.lang.String toString(boolean ignoreFreezing)
ignoreFreezing
- if true, the type string will not be wrapped with FrozenType(...), even if this type is frozen.public int componentsCount()
public java.util.List<AbstractType<?>> getComponents()
protected int valueLengthIfFixed()
public void writeValue(java.nio.ByteBuffer value, DataOutputPlus out) throws java.io.IOException
java.io.IOException
public long writtenLength(java.nio.ByteBuffer value)
public java.nio.ByteBuffer readValue(DataInputPlus in) throws java.io.IOException
java.io.IOException
public void skipValue(DataInputPlus in) throws java.io.IOException
java.io.IOException
public java.lang.String toString()
toString
in class java.lang.Object
Copyright © 2015 The Apache Software Foundation