org.apache.hadoop.hive.serde2.objectinspector
Class ReflectionStructObjectInspector

java.lang.Object
  extended by org.apache.hadoop.hive.serde2.objectinspector.StructObjectInspector
      extended by org.apache.hadoop.hive.serde2.objectinspector.SettableStructObjectInspector
          extended by org.apache.hadoop.hive.serde2.objectinspector.ReflectionStructObjectInspector
All Implemented Interfaces:
ObjectInspector

public class ReflectionStructObjectInspector
extends SettableStructObjectInspector

ReflectionStructObjectInspector works on struct data that is stored as a native Java object. It will drill down into the Java class to get the fields and construct ObjectInspectors for the fields, if they are not specified. Always use the ObjectInspectorFactory to create new ObjectInspector objects, instead of directly creating an instance of this class.


Nested Class Summary
static class ReflectionStructObjectInspector.MyField
           
 
Nested classes/interfaces inherited from interface org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector
ObjectInspector.Category
 
Method Summary
 Object create()
          Create a struct which is not null, but all its fields are null.
 List<? extends StructField> getAllStructFieldRefs()
          Returns all the fields.
 ObjectInspector.Category getCategory()
          An ObjectInspector must inherit from one of the following interfaces if getCategory() returns: PRIMITIVE: PrimitiveObjectInspector LIST: ListObjectInspector MAP: MapObjectInspector STRUCT: StructObjectInspector
 Object getStructFieldData(Object data, StructField fieldRef)
          returns null for data = null.
 StructField getStructFieldRef(String fieldName)
          Look up a field.
 List<Object> getStructFieldsDataAsList(Object data)
          returns null for data = null.
 String getTypeName()
          Returns the name of the data type that is inspected by this ObjectInspector.
 Object setStructFieldData(Object struct, StructField field, Object fieldValue)
          Modify the value of a field.
 boolean shouldIgnoreField(String name)
           
 
Methods inherited from class org.apache.hadoop.hive.serde2.objectinspector.StructObjectInspector
toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

getCategory

public ObjectInspector.Category getCategory()
Description copied from interface: ObjectInspector
An ObjectInspector must inherit from one of the following interfaces if getCategory() returns: PRIMITIVE: PrimitiveObjectInspector LIST: ListObjectInspector MAP: MapObjectInspector STRUCT: StructObjectInspector


getTypeName

public String getTypeName()
Description copied from interface: ObjectInspector
Returns the name of the data type that is inspected by this ObjectInspector. This is used to display the type information to the user. For primitive types, the type name is standardized. For other types, the type name can be something like "list", "map", java class names, or user-defined type names similar to typedef.


shouldIgnoreField

public boolean shouldIgnoreField(String name)

getStructFieldRef

public StructField getStructFieldRef(String fieldName)
Description copied from class: StructObjectInspector
Look up a field.

Specified by:
getStructFieldRef in class StructObjectInspector

getAllStructFieldRefs

public List<? extends StructField> getAllStructFieldRefs()
Description copied from class: StructObjectInspector
Returns all the fields.

Specified by:
getAllStructFieldRefs in class StructObjectInspector

getStructFieldData

public Object getStructFieldData(Object data,
                                 StructField fieldRef)
Description copied from class: StructObjectInspector
returns null for data = null.

Specified by:
getStructFieldData in class StructObjectInspector

getStructFieldsDataAsList

public List<Object> getStructFieldsDataAsList(Object data)
Description copied from class: StructObjectInspector
returns null for data = null.

Specified by:
getStructFieldsDataAsList in class StructObjectInspector

create

public Object create()
Description copied from class: SettableStructObjectInspector
Create a struct which is not null, but all its fields are null.

Specified by:
create in class SettableStructObjectInspector

setStructFieldData

public Object setStructFieldData(Object struct,
                                 StructField field,
                                 Object fieldValue)
Description copied from class: SettableStructObjectInspector
Modify the value of a field. Returns the struct.

Specified by:
setStructFieldData in class SettableStructObjectInspector


Copyright © 2009 The Apache Software Foundation