|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.eigenbase.runtime.SyntheticObject net.sf.farrago.type.runtime.FarragoSyntheticObject
public abstract class FarragoSyntheticObject
FarragoSyntheticObject refines SyntheticObject with Farrago-specific runtime information such as null values.
Nested Class Summary | |
---|---|
private class |
FarragoSyntheticObject.BooleanBitReference
Implementation of BitReference for accessing a NOT NULL boolean field. |
private static class |
FarragoSyntheticObject.NullIndicatorBitReference
Implementation of BitReference for accessing a null indicator. |
Field Summary | |
---|---|
private BitReference[] |
bitReferences
Array of BitReferences to be used by marshal/unmarshal. |
Constructor Summary | |
---|---|
protected |
FarragoSyntheticObject()
Creates a new FarragoSyntheticObject object. |
Method Summary | |
---|---|
Object[] |
getAttributes()
|
Object[] |
getAttributes(Map<String,Class<?>> map)
|
String |
getSQLTypeName()
|
private void |
indexBitFields()
Constructs an array of BitReferences for use in marshalling and unmarshalling bit fields. |
private void |
initFields()
Uses reflection to construct instances of all non-primitive fields. |
void |
marshalBitFields(ByteBuffer byteBuffer,
int bitFieldByteOffset)
Marshals all bit fields in this tuple. |
static boolean |
testIsDifferentFrom(FarragoSyntheticObject row1,
FarragoSyntheticObject row2)
Called at runtime to implement the SqlStdOperatorTable.isDifferentFromOperator
operator in a row-size fashion. |
String |
toString()
|
void |
unmarshalBitFields(ByteBuffer byteBuffer,
int bitFieldByteOffset)
Unmarshals all bit fields in this tuple. |
Methods inherited from class org.eigenbase.runtime.SyntheticObject |
---|
getFields, getFieldValue |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private BitReference[] bitReferences
TODO: assert somewhere that position in this array corresponds to FemTupleAccessor info.
Constructor Detail |
---|
protected FarragoSyntheticObject()
Method Detail |
---|
public void marshalBitFields(ByteBuffer byteBuffer, int bitFieldByteOffset)
byteBuffer
- destination ByteBufferbitFieldByteOffset
- absolute offset of first byte of bit fields in
ByteBufferpublic void unmarshalBitFields(ByteBuffer byteBuffer, int bitFieldByteOffset)
byteBuffer
- source ByteBufferbitFieldByteOffset
- absolute offset of first byte of bit fields in
ByteBufferprivate void indexBitFields()
private void initFields()
public Object[] getAttributes()
getAttributes
in interface Struct
public Object[] getAttributes(Map<String,Class<?>> map)
getAttributes
in interface Struct
public String getSQLTypeName() throws SQLException
getSQLTypeName
in interface Struct
SQLException
public String toString()
toString
in class Object
public static boolean testIsDifferentFrom(FarragoSyntheticObject row1, FarragoSyntheticObject row2)
SqlStdOperatorTable.isDifferentFromOperator
operator in a row-size fashion.
row1
- first row to comparerow2
- second row to compare (must be of exact same type as row1)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |