com.netflix.astyanax.serializers
Class SerializerPackageImpl

java.lang.Object
  extended by com.netflix.astyanax.serializers.SerializerPackageImpl
All Implemented Interfaces:
SerializerPackage

public class SerializerPackageImpl
extends java.lang.Object
implements SerializerPackage

Basic implementation of SerializerPackage which can be configured either from a ColumnFamilyDefinition or by manually setting either the ComparatorType or Serializer for keys, columns and values. Use this in conjunction with the CSV uploader to specify how values are serializer.


Field Summary
static SerializerPackage DEFAULT_SERIALIZER_PACKAGE
           
 
Constructor Summary
SerializerPackageImpl()
           
SerializerPackageImpl(com.netflix.astyanax.ddl.ColumnFamilyDefinition cfDef, boolean ignoreErrors)
          Construct a serializer package from a column family definition retrieved from the keyspace.
 
Method Summary
 java.nio.ByteBuffer columnAsByteBuffer(java.lang.String column)
          Convert a string column name to a ByteBuffer using the package's column serializer
 java.lang.String columnAsString(java.nio.ByteBuffer column)
          Convert a column name to a string using the package's column serializer
 java.util.Set<java.nio.ByteBuffer> getColumnNames()
           
 Serializer<?> getColumnNameSerializer()
           
 Serializer<?> getColumnSerializer()
          Deprecated. 
 Serializer<?> getColumnSerializer(java.nio.ByteBuffer columnName)
           
 Serializer<?> getColumnSerializer(java.lang.String columnName)
           
 Serializer<?> getDefaultValueSerializer()
           
 Serializer<?> getKeySerializer()
           
 Serializer<?> getValueSerializer()
          Deprecated. 
 Serializer<?> getValueSerializer(java.nio.ByteBuffer columnName)
          Deprecated. 
 Serializer<?> getValueSerializer(java.lang.String columnName)
          Deprecated. 
 java.nio.ByteBuffer keyAsByteBuffer(java.lang.String key)
          Convert a string key to a ByteBuffer using the package's key serializer
 java.lang.String keyAsString(java.nio.ByteBuffer key)
           
 SerializerPackageImpl setColumnNameSerializer(Serializer<?> serializer)
           
 SerializerPackageImpl setColumnNameType(java.lang.String columnType)
           
 SerializerPackageImpl setColumnType(java.lang.String columnType)
          Deprecated. 
 SerializerPackageImpl setDefaultValueSerializer(Serializer<?> serializer)
           
 SerializerPackageImpl setDefaultValueType(java.lang.String valueType)
           
 SerializerPackageImpl setKeySerializer(Serializer<?> serializer)
           
 SerializerPackageImpl setKeyType(java.lang.String keyType)
           
 SerializerPackageImpl setValueSerializer(java.nio.ByteBuffer columnName, Serializer<?> serializer)
           
 SerializerPackageImpl setValueSerializer(java.lang.String columnName, Serializer<?> serializer)
           
 SerializerPackageImpl setValueType(java.nio.ByteBuffer columnName, java.lang.String valueType)
           
 SerializerPackageImpl setValueType(java.lang.String columnName, java.lang.String type)
           
 java.nio.ByteBuffer valueAsByteBuffer(java.nio.ByteBuffer column, java.lang.String value)
          Convert a string value to a string using the package's value serializer
 java.nio.ByteBuffer valueAsByteBuffer(java.lang.String column, java.lang.String value)
          Convert a string value to a string using the package's value serializer
 java.lang.String valueAsString(java.nio.ByteBuffer column, java.nio.ByteBuffer value)
          Convert a value to a string using the package's value serializer.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_SERIALIZER_PACKAGE

public static final SerializerPackage DEFAULT_SERIALIZER_PACKAGE
Constructor Detail

SerializerPackageImpl

public SerializerPackageImpl()

SerializerPackageImpl

public SerializerPackageImpl(com.netflix.astyanax.ddl.ColumnFamilyDefinition cfDef,
                             boolean ignoreErrors)
                      throws UnknownComparatorException
Construct a serializer package from a column family definition retrieved from the keyspace. This is the preferred method of initialing the serializer since it most closely matches the validators and comparator type set in cassandra.

Parameters:
cfDef -
ignoreErrors -
Throws:
UnknownComparatorException
Method Detail

setKeyType

public SerializerPackageImpl setKeyType(java.lang.String keyType)
                                 throws UnknownComparatorException
Throws:
UnknownComparatorException

setKeySerializer

public SerializerPackageImpl setKeySerializer(Serializer<?> serializer)

setColumnType

@Deprecated
public SerializerPackageImpl setColumnType(java.lang.String columnType)
                                    throws UnknownComparatorException
Deprecated. 

Throws:
UnknownComparatorException

setColumnNameType

public SerializerPackageImpl setColumnNameType(java.lang.String columnType)
                                        throws UnknownComparatorException
Throws:
UnknownComparatorException

setColumnNameSerializer

public SerializerPackageImpl setColumnNameSerializer(Serializer<?> serializer)

setDefaultValueType

public SerializerPackageImpl setDefaultValueType(java.lang.String valueType)
                                          throws UnknownComparatorException
Throws:
UnknownComparatorException

setDefaultValueSerializer

public SerializerPackageImpl setDefaultValueSerializer(Serializer<?> serializer)

setValueType

public SerializerPackageImpl setValueType(java.lang.String columnName,
                                          java.lang.String type)
                                   throws UnknownComparatorException
Throws:
UnknownComparatorException

setValueType

public SerializerPackageImpl setValueType(java.nio.ByteBuffer columnName,
                                          java.lang.String valueType)
                                   throws UnknownComparatorException
Throws:
UnknownComparatorException

setValueSerializer

public SerializerPackageImpl setValueSerializer(java.lang.String columnName,
                                                Serializer<?> serializer)

setValueSerializer

public SerializerPackageImpl setValueSerializer(java.nio.ByteBuffer columnName,
                                                Serializer<?> serializer)

getKeySerializer

public Serializer<?> getKeySerializer()
Specified by:
getKeySerializer in interface SerializerPackage
Returns:
Return the serializer for keys

getColumnSerializer

@Deprecated
public Serializer<?> getColumnSerializer()
Deprecated. 

Specified by:
getColumnSerializer in interface SerializerPackage

getColumnNameSerializer

public Serializer<?> getColumnNameSerializer()
Specified by:
getColumnNameSerializer in interface SerializerPackage
Returns:
Return serializer for column names

getValueSerializer

@Deprecated
public Serializer<?> getValueSerializer(java.nio.ByteBuffer columnName)
Deprecated. 

Specified by:
getValueSerializer in interface SerializerPackage

getColumnSerializer

public Serializer<?> getColumnSerializer(java.nio.ByteBuffer columnName)
Specified by:
getColumnSerializer in interface SerializerPackage
Returns:
Return the value serializer for the specified column name

getColumnSerializer

public Serializer<?> getColumnSerializer(java.lang.String columnName)
Specified by:
getColumnSerializer in interface SerializerPackage
Returns:
Return the value serializer for the specified column name

getValueSerializer

@Deprecated
public Serializer<?> getValueSerializer(java.lang.String columnName)
Deprecated. 

Specified by:
getValueSerializer in interface SerializerPackage

getColumnNames

public java.util.Set<java.nio.ByteBuffer> getColumnNames()
Specified by:
getColumnNames in interface SerializerPackage
Returns:
Return the set of supported column names

getValueSerializer

@Deprecated
public Serializer<?> getValueSerializer()
Deprecated. 

Specified by:
getValueSerializer in interface SerializerPackage

getDefaultValueSerializer

public Serializer<?> getDefaultValueSerializer()
Specified by:
getDefaultValueSerializer in interface SerializerPackage
Returns:
Return the default value serializer

keyAsString

public java.lang.String keyAsString(java.nio.ByteBuffer key)
Specified by:
keyAsString in interface SerializerPackage
Returns:
Convert a key to a string using the package's key serializer

columnAsString

public java.lang.String columnAsString(java.nio.ByteBuffer column)
Description copied from interface: SerializerPackage
Convert a column name to a string using the package's column serializer

Specified by:
columnAsString in interface SerializerPackage

valueAsString

public java.lang.String valueAsString(java.nio.ByteBuffer column,
                                      java.nio.ByteBuffer value)
Description copied from interface: SerializerPackage
Convert a value to a string using the package's value serializer. Will use either a column specific serializer, if one was specified, or the default value serializer.

Specified by:
valueAsString in interface SerializerPackage

keyAsByteBuffer

public java.nio.ByteBuffer keyAsByteBuffer(java.lang.String key)
Description copied from interface: SerializerPackage
Convert a string key to a ByteBuffer using the package's key serializer

Specified by:
keyAsByteBuffer in interface SerializerPackage

columnAsByteBuffer

public java.nio.ByteBuffer columnAsByteBuffer(java.lang.String column)
Description copied from interface: SerializerPackage
Convert a string column name to a ByteBuffer using the package's column serializer

Specified by:
columnAsByteBuffer in interface SerializerPackage

valueAsByteBuffer

public java.nio.ByteBuffer valueAsByteBuffer(java.nio.ByteBuffer column,
                                             java.lang.String value)
Description copied from interface: SerializerPackage
Convert a string value to a string using the package's value serializer

Specified by:
valueAsByteBuffer in interface SerializerPackage

valueAsByteBuffer

public java.nio.ByteBuffer valueAsByteBuffer(java.lang.String column,
                                             java.lang.String value)
Description copied from interface: SerializerPackage
Convert a string value to a string using the package's value serializer

Specified by:
valueAsByteBuffer in interface SerializerPackage