|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.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
ByteBuffer
public 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 Structpublic Object[] getAttributes(Map<String,Class<?>> map)
getAttributes in interface Struct
public String getSQLTypeName()
throws SQLException
getSQLTypeName in interface StructSQLExceptionpublic 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 | ||||||||