GemStone::GemFire::Cache::Generic::IGFSerializable Interface Reference

Inherited by GemStone::GemFire::Cache::Generic::CacheableHashMap, GemStone::GemFire::Cache::Generic::CacheableLinkedList, GemStone::GemFire::Cache::Generic::CacheableObject, GemStone::GemFire::Cache::Generic::CacheableObjectArray, GemStone::GemFire::Cache::Generic::CacheableObjectXml, GemStone::GemFire::Cache::Generic::CacheableStack, GemStone::GemFire::Cache::Generic::CacheableUndefined, GemStone::GemFire::Cache::Generic::CacheableVector, GemStone::GemFire::Cache::Generic::ICacheableKey, GemStone::GemFire::Cache::Generic::Internal::EnumInfo, GemStone::GemFire::Cache::Generic::Internal::PdxFieldType [private], GemStone::GemFire::Cache::Generic::Internal::PdxType, GemStone::GemFire::Cache::Generic::Properties< TPropKey, TPropValue >, GemStone::GemFire::Cache::Generic::Properties< String^ , String^ >, GemStone::GemFire::Cache::Generic::RegionAttributes< TKey, TValue >, GemStone::GemFire::Cache::Generic::Serializable, and GemStone::GemFire::Cache::Generic::UserFunctionExecutionException.


Detailed Description

This interface class is the superclass of all user objects in the cache that can be serialized.

Public Member Functions

IGFSerializableFromData (DataInput^ input)
void ToData (DataOutput^ output)
String^ ToString ()

Properties

uint32_t ClassId [get]
uint32_t ObjectSize [get]

Member Function Documentation

IGFSerializable ^ GemStone::GemFire::Cache::Generic::IGFSerializable::FromData ( DataInput^   input  ) 

Deserialize this object, typical implementation should return the 'this' pointer.

Parameters:
input the DataInput stream to use for reading the object data
Returns:
the deserialized object

Implemented in GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< TNative, TNativePtr, TManaged, TYPEID >, GemStone::GemFire::Cache::Generic::CacheableDate, GemStone::GemFire::Cache::Generic::CacheableFileName, GemStone::GemFire::Cache::Generic::CacheableHashMap, GemStone::GemFire::Cache::Generic::Internal::CacheableHashSetType< TYPEID, HSTYPE >, GemStone::GemFire::Cache::Generic::CacheableHashTable, GemStone::GemFire::Cache::Generic::CacheableLinkedList, GemStone::GemFire::Cache::Generic::CacheableObjectArray, GemStone::GemFire::Cache::Generic::CacheableObject, GemStone::GemFire::Cache::Generic::CacheableObjectXml, GemStone::GemFire::Cache::Generic::CacheableStack, GemStone::GemFire::Cache::Generic::CacheableStringArray, GemStone::GemFire::Cache::Generic::CacheableString, GemStone::GemFire::Cache::Generic::CacheableUndefined, GemStone::GemFire::Cache::Generic::CacheableVector, GemStone::GemFire::Cache::Generic::Properties< TPropKey, TPropValue >, GemStone::GemFire::Cache::Generic::RegionAttributes< TKey, TValue >, GemStone::GemFire::Cache::Generic::Serializable, GemStone::GemFire::Cache::Generic::UserFunctionExecutionException, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableBytes, gemfire::CacheableBytesPtr, Byte, GemFireClassIds::CacheableBytes >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt32Array, gemfire::CacheableInt32ArrayPtr, int32_t, GemFireClassIds::CacheableInt32Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CharArray, gemfire::CharArrayPtr, Char, GemFireClassIds::CharArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt64Array, gemfire::CacheableInt64ArrayPtr, int64_t, GemFireClassIds::CacheableInt64Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableFloatArray, gemfire::CacheableFloatArrayPtr, Single, GemFireClassIds::CacheableFloatArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt16Array, gemfire::CacheableInt16ArrayPtr, int16_t, GemFireClassIds::CacheableInt16Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableDoubleArray, gemfire::CacheableDoubleArrayPtr, Double, GemFireClassIds::CacheableDoubleArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::BooleanArray, gemfire::BooleanArrayPtr, bool, GemFireClassIds::BooleanArray >, GemStone::GemFire::Cache::Generic::Internal::CacheableHashSetType< GemStone::GemFire::Cache::Generic::GemFireClassIds::CacheableHashSet, gemfire::CacheableHashSet >, GemStone::GemFire::Cache::Generic::Internal::CacheableHashSetType< GemStone::GemFire::Cache::Generic::GemFireClassIds::CacheableLinkedHashSet, gemfire::CacheableLinkedHashSet >, and GemStone::GemFire::Cache::Generic::Properties< String^ , String^ >.

void GemStone::GemFire::Cache::Generic::IGFSerializable::ToData ( DataOutput^   output  ) 

Serializes this object.

Parameters:
output the DataOutput object to use for serializing the object

Implemented in GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< TNative, TNativePtr, TManaged, TYPEID >, GemStone::GemFire::Cache::Generic::CacheableDate, GemStone::GemFire::Cache::Generic::CacheableFileName, GemStone::GemFire::Cache::Generic::CacheableHashMap, GemStone::GemFire::Cache::Generic::Internal::CacheableHashSetType< TYPEID, HSTYPE >, GemStone::GemFire::Cache::Generic::CacheableLinkedList, GemStone::GemFire::Cache::Generic::CacheableObjectArray, GemStone::GemFire::Cache::Generic::CacheableObject, GemStone::GemFire::Cache::Generic::CacheableObjectXml, GemStone::GemFire::Cache::Generic::CacheableStack, GemStone::GemFire::Cache::Generic::CacheableStringArray, GemStone::GemFire::Cache::Generic::CacheableString, GemStone::GemFire::Cache::Generic::CacheableUndefined, GemStone::GemFire::Cache::Generic::CacheableVector, GemStone::GemFire::Cache::Generic::Properties< TPropKey, TPropValue >, GemStone::GemFire::Cache::Generic::RegionAttributes< TKey, TValue >, GemStone::GemFire::Cache::Generic::Serializable, GemStone::GemFire::Cache::Generic::UserFunctionExecutionException, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableBytes, gemfire::CacheableBytesPtr, Byte, GemFireClassIds::CacheableBytes >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt32Array, gemfire::CacheableInt32ArrayPtr, int32_t, GemFireClassIds::CacheableInt32Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CharArray, gemfire::CharArrayPtr, Char, GemFireClassIds::CharArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt64Array, gemfire::CacheableInt64ArrayPtr, int64_t, GemFireClassIds::CacheableInt64Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableFloatArray, gemfire::CacheableFloatArrayPtr, Single, GemFireClassIds::CacheableFloatArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt16Array, gemfire::CacheableInt16ArrayPtr, int16_t, GemFireClassIds::CacheableInt16Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableDoubleArray, gemfire::CacheableDoubleArrayPtr, Double, GemFireClassIds::CacheableDoubleArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::BooleanArray, gemfire::BooleanArrayPtr, bool, GemFireClassIds::BooleanArray >, GemStone::GemFire::Cache::Generic::Internal::CacheableHashSetType< GemStone::GemFire::Cache::Generic::GemFireClassIds::CacheableHashSet, gemfire::CacheableHashSet >, GemStone::GemFire::Cache::Generic::Internal::CacheableHashSetType< GemStone::GemFire::Cache::Generic::GemFireClassIds::CacheableLinkedHashSet, gemfire::CacheableLinkedHashSet >, and GemStone::GemFire::Cache::Generic::Properties< String^ , String^ >.

String ^ GemStone::GemFire::Cache::Generic::IGFSerializable::ToString (  ) 

Return a string representation of the object.

Implemented in GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< TNative, TManaged, TYPEID >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< TNative, TNativePtr, TManaged, TYPEID >, GemStone::GemFire::Cache::Generic::CacheableDate, GemStone::GemFire::Cache::Generic::CacheableFileName, GemStone::GemFire::Cache::Generic::CacheableObject, GemStone::GemFire::Cache::Generic::CacheableObjectXml, GemStone::GemFire::Cache::Generic::CacheableStringArray, GemStone::GemFire::Cache::Generic::CacheableString, GemStone::GemFire::Cache::Generic::Properties< TPropKey, TPropValue >, GemStone::GemFire::Cache::Generic::Serializable, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableFloat, Single, GemFireClassIds::CacheableFloat >, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableByte, Byte, GemFireClassIds::CacheableByte >, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableWideChar, Char, GemFireClassIds::CacheableCharacter >, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableDouble, Double, GemFireClassIds::CacheableDouble >, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableInt64, int64_t, GemFireClassIds::CacheableInt64 >, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableBoolean, bool, GemFireClassIds::CacheableBoolean >, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableInt16, int16_t, GemFireClassIds::CacheableInt16 >, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableInt32, int32_t, GemFireClassIds::CacheableInt32 >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableBytes, gemfire::CacheableBytesPtr, Byte, GemFireClassIds::CacheableBytes >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt32Array, gemfire::CacheableInt32ArrayPtr, int32_t, GemFireClassIds::CacheableInt32Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CharArray, gemfire::CharArrayPtr, Char, GemFireClassIds::CharArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt64Array, gemfire::CacheableInt64ArrayPtr, int64_t, GemFireClassIds::CacheableInt64Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableFloatArray, gemfire::CacheableFloatArrayPtr, Single, GemFireClassIds::CacheableFloatArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt16Array, gemfire::CacheableInt16ArrayPtr, int16_t, GemFireClassIds::CacheableInt16Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableDoubleArray, gemfire::CacheableDoubleArrayPtr, Double, GemFireClassIds::CacheableDoubleArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::BooleanArray, gemfire::BooleanArrayPtr, bool, GemFireClassIds::BooleanArray >, and GemStone::GemFire::Cache::Generic::Properties< String^ , String^ >.


Property Documentation

uint32_t GemStone::GemFire::Cache::Generic::IGFSerializable::ClassId [get]

Returns the classId of the instance being serialized. This is used by deserialization to determine what instance type to create and deserialize into.

The classId must be unique within an application suite and in the range 0 to ((2^31)-1) both inclusive. An application can thus define upto 2^31 custom IGFSerializable classes. Returning a value greater than ((2^31)-1) may result in undefined behaviour.

Returns:
the classId

Implemented in GemStone::GemFire::Cache::Generic::CacheableArrayList, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< TNative, TManaged, TYPEID >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< TNative, TNativePtr, TManaged, TYPEID >, GemStone::GemFire::Cache::Generic::CacheableDate, GemStone::GemFire::Cache::Generic::CacheableFileName, GemStone::GemFire::Cache::Generic::CacheableHashMap, GemStone::GemFire::Cache::Generic::Internal::CacheableHashSetType< TYPEID, HSTYPE >, GemStone::GemFire::Cache::Generic::CacheableHashTable, GemStone::GemFire::Cache::Generic::CacheableIdentityHashMap, GemStone::GemFire::Cache::Generic::CacheableLinkedList, GemStone::GemFire::Cache::Generic::CacheableObjectArray, GemStone::GemFire::Cache::Generic::CacheableObject, GemStone::GemFire::Cache::Generic::CacheableObjectXml, GemStone::GemFire::Cache::Generic::CacheableStack, GemStone::GemFire::Cache::Generic::CacheableStringArray, GemStone::GemFire::Cache::Generic::CacheableString, GemStone::GemFire::Cache::Generic::CacheableUndefined, GemStone::GemFire::Cache::Generic::CacheableVector, GemStone::GemFire::Cache::Generic::Properties< TPropKey, TPropValue >, GemStone::GemFire::Cache::Generic::RegionAttributes< TKey, TValue >, GemStone::GemFire::Cache::Generic::Serializable, GemStone::GemFire::Cache::Generic::UserFunctionExecutionException, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableFloat, Single, GemFireClassIds::CacheableFloat >, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableByte, Byte, GemFireClassIds::CacheableByte >, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableWideChar, Char, GemFireClassIds::CacheableCharacter >, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableDouble, Double, GemFireClassIds::CacheableDouble >, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableInt64, int64_t, GemFireClassIds::CacheableInt64 >, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableBoolean, bool, GemFireClassIds::CacheableBoolean >, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableInt16, int16_t, GemFireClassIds::CacheableInt16 >, GemStone::GemFire::Cache::Generic::CacheableBuiltinKey< gemfire::CacheableInt32, int32_t, GemFireClassIds::CacheableInt32 >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableBytes, gemfire::CacheableBytesPtr, Byte, GemFireClassIds::CacheableBytes >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt32Array, gemfire::CacheableInt32ArrayPtr, int32_t, GemFireClassIds::CacheableInt32Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CharArray, gemfire::CharArrayPtr, Char, GemFireClassIds::CharArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt64Array, gemfire::CacheableInt64ArrayPtr, int64_t, GemFireClassIds::CacheableInt64Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableFloatArray, gemfire::CacheableFloatArrayPtr, Single, GemFireClassIds::CacheableFloatArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt16Array, gemfire::CacheableInt16ArrayPtr, int16_t, GemFireClassIds::CacheableInt16Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableDoubleArray, gemfire::CacheableDoubleArrayPtr, Double, GemFireClassIds::CacheableDoubleArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::BooleanArray, gemfire::BooleanArrayPtr, bool, GemFireClassIds::BooleanArray >, GemStone::GemFire::Cache::Generic::Internal::CacheableHashSetType< GemStone::GemFire::Cache::Generic::GemFireClassIds::CacheableHashSet, gemfire::CacheableHashSet >, GemStone::GemFire::Cache::Generic::Internal::CacheableHashSetType< GemStone::GemFire::Cache::Generic::GemFireClassIds::CacheableLinkedHashSet, gemfire::CacheableLinkedHashSet >, and GemStone::GemFire::Cache::Generic::Properties< String^ , String^ >.

uint32_t GemStone::GemFire::Cache::Generic::IGFSerializable::ObjectSize [get]

Get the size of this object in bytes. This is only needed if you use the HeapLRU feature.

Note that you can simply return zero if you are not using the HeapLRU feature.

Returns:
the size of this object in bytes.

Implemented in GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< TNative, TNativePtr, TManaged, TYPEID >, GemStone::GemFire::Cache::Generic::CacheableDate, GemStone::GemFire::Cache::Generic::CacheableFileName, GemStone::GemFire::Cache::Generic::CacheableHashMap, GemStone::GemFire::Cache::Generic::Internal::CacheableHashSetType< TYPEID, HSTYPE >, GemStone::GemFire::Cache::Generic::CacheableLinkedList, GemStone::GemFire::Cache::Generic::CacheableObjectArray, GemStone::GemFire::Cache::Generic::CacheableObject, GemStone::GemFire::Cache::Generic::CacheableObjectXml, GemStone::GemFire::Cache::Generic::CacheableStack, GemStone::GemFire::Cache::Generic::CacheableStringArray, GemStone::GemFire::Cache::Generic::CacheableString, GemStone::GemFire::Cache::Generic::CacheableUndefined, GemStone::GemFire::Cache::Generic::CacheableVector, GemStone::GemFire::Cache::Generic::Properties< TPropKey, TPropValue >, GemStone::GemFire::Cache::Generic::RegionAttributes< TKey, TValue >, GemStone::GemFire::Cache::Generic::Serializable, GemStone::GemFire::Cache::Generic::UserFunctionExecutionException, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableBytes, gemfire::CacheableBytesPtr, Byte, GemFireClassIds::CacheableBytes >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt32Array, gemfire::CacheableInt32ArrayPtr, int32_t, GemFireClassIds::CacheableInt32Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CharArray, gemfire::CharArrayPtr, Char, GemFireClassIds::CharArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt64Array, gemfire::CacheableInt64ArrayPtr, int64_t, GemFireClassIds::CacheableInt64Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableFloatArray, gemfire::CacheableFloatArrayPtr, Single, GemFireClassIds::CacheableFloatArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableInt16Array, gemfire::CacheableInt16ArrayPtr, int16_t, GemFireClassIds::CacheableInt16Array >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::CacheableDoubleArray, gemfire::CacheableDoubleArrayPtr, Double, GemFireClassIds::CacheableDoubleArray >, GemStone::GemFire::Cache::Generic::CacheableBuiltinArray< gemfire::BooleanArray, gemfire::BooleanArrayPtr, bool, GemFireClassIds::BooleanArray >, GemStone::GemFire::Cache::Generic::Internal::CacheableHashSetType< GemStone::GemFire::Cache::Generic::GemFireClassIds::CacheableHashSet, gemfire::CacheableHashSet >, GemStone::GemFire::Cache::Generic::Internal::CacheableHashSetType< GemStone::GemFire::Cache::Generic::GemFireClassIds::CacheableLinkedHashSet, gemfire::CacheableLinkedHashSet >, and GemStone::GemFire::Cache::Generic::Properties< String^ , String^ >.


GemFire C++ Cache .NET API Documentation