org.apache.hadoop.hive.serde2
Class TypedSerDe

java.lang.Object
  extended by org.apache.hadoop.hive.serde2.AbstractSerDe
      extended by org.apache.hadoop.hive.serde2.TypedSerDe
All Implemented Interfaces:
Deserializer, SerDe, Serializer
Direct Known Subclasses:
ByteStreamTypedSerDe

public abstract class TypedSerDe
extends AbstractSerDe

TypedSerDe.


Field Summary
protected  Object deserializeCache
           
protected  Class<?> objectClass
           
protected  Type objectType
           
 
Constructor Summary
TypedSerDe(Type objectType)
           
 
Method Summary
 Object deserialize(Writable blob)
          Deserialize an object out of a Writable blob.
 ObjectInspector getObjectInspector()
          Get the object inspector that can be used to navigate through the internal structure of the Object returned from deserialize(...).
protected  ObjectInspectorFactory.ObjectInspectorOptions getObjectInspectorOptions()
           
 SerDeStats getSerDeStats()
          Returns statistics collected when serializing
 Class<? extends Writable> getSerializedClass()
          Returns the Writable class that would be returned by the serialize method.
 void initialize(Configuration job, Properties tbl)
          Initialize the HiveSerializer.
 Writable serialize(Object obj, ObjectInspector objInspector)
          Serialize an object by navigating inside the Object with the ObjectInspector.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

objectType

protected Type objectType

objectClass

protected Class<?> objectClass

deserializeCache

protected Object deserializeCache
Constructor Detail

TypedSerDe

public TypedSerDe(Type objectType)
           throws SerDeException
Throws:
SerDeException
Method Detail

deserialize

public Object deserialize(Writable blob)
                   throws SerDeException
Description copied from class: AbstractSerDe
Deserialize an object out of a Writable blob. In most cases, the return value of this function will be constant since the function will reuse the returned object. If the client wants to keep a copy of the object, the client needs to clone the returned value by calling ObjectInspectorUtils.getStandardObject().

Specified by:
deserialize in interface Deserializer
Specified by:
deserialize in class AbstractSerDe
Parameters:
blob - The Writable object containing a serialized object
Returns:
A Java object representing the contents in the blob.
Throws:
SerDeException

getObjectInspector

public ObjectInspector getObjectInspector()
                                   throws SerDeException
Description copied from class: AbstractSerDe
Get the object inspector that can be used to navigate through the internal structure of the Object returned from deserialize(...).

Specified by:
getObjectInspector in interface Deserializer
Specified by:
getObjectInspector in class AbstractSerDe
Throws:
SerDeException

getObjectInspectorOptions

protected ObjectInspectorFactory.ObjectInspectorOptions getObjectInspectorOptions()

initialize

public void initialize(Configuration job,
                       Properties tbl)
                throws SerDeException
Description copied from class: AbstractSerDe
Initialize the HiveSerializer.

Specified by:
initialize in interface Deserializer
Specified by:
initialize in interface Serializer
Specified by:
initialize in class AbstractSerDe
Parameters:
job - System properties
tbl - table properties
Throws:
SerDeException

getSerializedClass

public Class<? extends Writable> getSerializedClass()
Description copied from class: AbstractSerDe
Returns the Writable class that would be returned by the serialize method. This is used to initialize SequenceFile header.

Specified by:
getSerializedClass in interface Serializer
Specified by:
getSerializedClass in class AbstractSerDe

serialize

public Writable serialize(Object obj,
                          ObjectInspector objInspector)
                   throws SerDeException
Description copied from class: AbstractSerDe
Serialize an object by navigating inside the Object with the ObjectInspector. In most cases, the return value of this function will be constant since the function will reuse the Writable object. If the client wants to keep a copy of the Writable, the client needs to clone the returned value.

Specified by:
serialize in interface Serializer
Specified by:
serialize in class AbstractSerDe
Throws:
SerDeException

getSerDeStats

public SerDeStats getSerDeStats()
Description copied from class: AbstractSerDe
Returns statistics collected when serializing

Specified by:
getSerDeStats in interface Deserializer
Specified by:
getSerDeStats in interface Serializer
Specified by:
getSerDeStats in class AbstractSerDe


Copyright © 2012 The Apache Software Foundation