GemStone::GemFire::Cache::CacheableObjectXml Class Reference

Inherits GemStone::GemFire::Cache::IGFSerializable.

Detailed Description

A mutable generic System.Object wrapper that can serve as a distributable value for caching.

This class can contain any object and uses the System.Xml.Serialization.XmlSerializer to serialize and deserialize the object. So the user must use the XmlSerializer attributes to control the serialization/deserialization of the object (or implement the System.Xml.Serialization.IXmlSerializable) to change the serialization/deserialization. However, the latter should be avoided for efficiency reasons and the user should implement IGFSerializable instead.

The user must keep in mind that the rules that apply to XmlSerializer would be the rules that apply to this class. For instance the user cannot pass objects of class implementing or containing System.Collections.IDictionary class, must use System.Xml.Serialization.XmlIncludeAttribute to mark user-defined types etc.

Public Member Functions

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

Static Public Member Functions

Create (Object^ value)
static IGFSerializableCreateDeserializable ()


virtual uint32_t ClassId [get]
virtual uint32_t ObjectSize [get]
Object^  Value [get]

Member Function Documentation

static CacheableObjectXml ^ GemStone::GemFire::Cache::CacheableObjectXml::Create ( Object^   value  )  [inline, static]

Static function to create a new instance from the given object.

If the given object is null then this method returns null.

static IGFSerializable ^ GemStone::GemFire::Cache::CacheableObjectXml::CreateDeserializable (  )  [inline, static]

Factory function to register this class.

virtual IGFSerializable ^ GemStone::GemFire::Cache::CacheableObjectXml::FromData ( DataInput^   input  )  [virtual]

Deserializes the System.Object using System.Xml.Serialization.XmlSerializer class.

input the DataInput stream to use for reading the object data
the deserialized object

Implements GemStone::GemFire::Cache::IGFSerializable.

virtual void GemStone::GemFire::Cache::CacheableObjectXml::ToData ( DataOutput^   output  )  [virtual]

Serializes this System.Object using System.Xml.Serialization.XmlSerializer class.

output the DataOutput object to use for serializing the object

Implements GemStone::GemFire::Cache::IGFSerializable.

virtual String ^ GemStone::GemFire::Cache::CacheableObjectXml::ToString (  )  [inline, override, virtual]

Return a string representation of the object.

Implements GemStone::GemFire::Cache::IGFSerializable.

Property Documentation

virtual uint32_t GemStone::GemFire::Cache::CacheableObjectXml::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

Implements GemStone::GemFire::Cache::IGFSerializable.

virtual uint32_t GemStone::GemFire::Cache::CacheableObjectXml::ObjectSize [get]

return the size of this object in bytes

Implements GemStone::GemFire::Cache::IGFSerializable.

Object^ GemStone::GemFire::Cache::CacheableObjectXml::Value [get]

Gets the object value.

The user can modify the object and the changes shall be reflected immediately in the local cache. For this change to be propagate to other members of the distributed system, the object needs to be put into the cache.

GemFire C++ Cache .NET API Documentation