org.apache.hadoop.hbase.types
Class Union3<A,B,C>

java.lang.Object
  extended by org.apache.hadoop.hbase.types.Union2<A,B>
      extended by org.apache.hadoop.hbase.types.Union3<A,B,C>
All Implemented Interfaces:
DataType<Object>
Direct Known Subclasses:
Union4

@InterfaceAudience.Public
@InterfaceStability.Evolving
public abstract class Union3<A,B,C>
extends Union2<A,B>

The Union family of DataTypes encode one of a fixed collection of Objects. They provide convenience methods which handle type casting on your behalf.

See Also:
Union2

Field Summary
protected  DataType<C> typeC
           
 
Fields inherited from class org.apache.hadoop.hbase.types.Union2
typeA, typeB
 
Constructor Summary
Union3(DataType<A> typeA, DataType<B> typeB, DataType<C> typeC)
          Create an instance of Union3 over the set of specified types.
 
Method Summary
 C decodeC(PositionedByteRange src)
          Read an instance of the third type parameter from buffer src.
 Order getOrder()
          Retrieve the sort Order imposed by this data type, or null when natural ordering is not preserved.
 boolean isNullable()
          Indicates whether this instance supports encoding null values.
 boolean isOrderPreserving()
          Indicates whether this instance writes encoded byte[]'s which preserve the natural sort order of the unencoded value.
 boolean isSkippable()
          Indicates whether this instance is able to skip over it's encoded value.
 
Methods inherited from class org.apache.hadoop.hbase.types.Union2
decodeA, decodeB, encodedClass
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.hadoop.hbase.types.DataType
decode, encode, encodedLength, skip
 

Field Detail

typeC

protected final DataType<C> typeC
Constructor Detail

Union3

public Union3(DataType<A> typeA,
              DataType<B> typeB,
              DataType<C> typeC)
Create an instance of Union3 over the set of specified types.

Method Detail

isOrderPreserving

public boolean isOrderPreserving()
Description copied from interface: DataType
Indicates whether this instance writes encoded byte[]'s which preserve the natural sort order of the unencoded value.

Specified by:
isOrderPreserving in interface DataType<Object>
Overrides:
isOrderPreserving in class Union2<A,B>
Returns:
true when natural order is preserved, false otherwise.

getOrder

public Order getOrder()
Description copied from interface: DataType
Retrieve the sort Order imposed by this data type, or null when natural ordering is not preserved. Value is either ascending or descending. Default is assumed to be Order.ASCENDING.

Specified by:
getOrder in interface DataType<Object>
Overrides:
getOrder in class Union2<A,B>

isNullable

public boolean isNullable()
Description copied from interface: DataType
Indicates whether this instance supports encoding null values. This depends on the implementation details of the encoding format. All DataTypes that support null should treat null as comparing less than any non-null value for default sort ordering purposes.

Specified by:
isNullable in interface DataType<Object>
Overrides:
isNullable in class Union2<A,B>
Returns:
true when null is supported, false otherwise.

isSkippable

public boolean isSkippable()
Description copied from interface: DataType
Indicates whether this instance is able to skip over it's encoded value. DataTypes that are not skippable can only be used as the right-most field of a Struct.

Specified by:
isSkippable in interface DataType<Object>
Overrides:
isSkippable in class Union2<A,B>

decodeC

public C decodeC(PositionedByteRange src)
Read an instance of the third type parameter from buffer src.



Copyright © 2013 The Apache Software Foundation. All Rights Reserved.