Apache Geode Native C++ Reference 1.15.0
apache::geode::client::DataSerializable Class Referenceabstract

An interface for objects whose contents can be serialized as primitive types. More...

#include <DataSerializable.hpp>

Inherits apache::geode::client::Serializable.

Public Member Functions

virtual void fromData (DataInput &dataInput)=0
 deserialize this object. More...
 
const std::type_info & getType () const
 Return the std::type_info of the instance being serialized. More...
 
virtual size_t objectSize () const
 return the size in bytes of the instance being serialized. More...
 
virtual void toData (DataOutput &dataOutput) const =0
 serialize this object More...
 
virtual std::string toString () const
 Display this object as 'string', which depends on the implementation in the subclasses. More...
 

Static Public Member Functions

template<class _T >
static std::shared_ptr< Serializablecreate (_T value)
 Factory method that creates the Serializable object that matches the type of value. More...
 

Detailed Description

An interface for objects whose contents can be serialized as primitive types.

Member Function Documentation

◆ create()

template<class _T >
static std::shared_ptr< Serializable > apache::geode::client::Serializable::create ( _T  value)
staticinherited

Factory method that creates the Serializable object that matches the type of value.

For user defined derivations of Serializable, the method apache::geode::client::Serializable::create may be overloaded.

◆ fromData()

virtual void apache::geode::client::DataSerializable::fromData ( DataInput dataInput)
pure virtual

deserialize this object.

◆ getType()

const std::type_info & apache::geode::client::DataSerializable::getType ( ) const
inline

Return the std::type_info of the instance being serialized.

This is used by deserialization to determine what instance type to create and deserialize into.

The type must be unique within an application suite.

◆ objectSize()

virtual size_t apache::geode::client::Serializable::objectSize ( ) const
virtualinherited

return the size in bytes of the instance being serialized.

This is used to determine whether the cache is using up more physical memory than it has been configured to use. The method can return zero if the user does not require the ability to control cache memory utilization. Note that you must implement this only if you use the HeapLRU feature.

Reimplemented in apache::geode::client::CacheableDate, apache::geode::client::CacheableEnum, apache::geode::client::CacheableString, and apache::geode::client::PdxInstance.

◆ toData()

virtual void apache::geode::client::DataSerializable::toData ( DataOutput dataOutput) const
pure virtual

serialize this object

◆ toString()

virtual std::string apache::geode::client::Serializable::toString ( ) const
virtualinherited

Apache Geode C++ Cache API Documentation