VMware Tanzu GemFire Native C++ Reference 10.3.0
|
WritablePdxInstance is a PdxInstance
that also supports field modification using the setField
method.
More...
#include <WritablePdxInstance.hpp>
Inherits apache::geode::client::PdxInstance.
Public Member Functions | |
virtual std::shared_ptr< WritablePdxInstance > | createWriter ()=0 |
Creates and returns a WritablePdxInstance whose initial values are those of this PdxInstance. More... | |
virtual void | fromData (PdxReader &input) override=0 |
Deserialize this object. More... | |
virtual std::vector< bool > | getBooleanArrayField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in bool array type out param. More... | |
virtual bool | getBooleanField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in bool type out param. More... | |
virtual std::vector< int8_t > | getByteArrayField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in signed char array type out param. More... | |
virtual int8_t | getByteField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in signed char type out param. More... | |
virtual std::shared_ptr< CacheableDate > | getCacheableDateField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in std::shared_ptr<CacheableDate> type out param. More... | |
virtual std::shared_ptr< Cacheable > | getCacheableField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in std::shared_ptr<Cacheable> type out param. More... | |
virtual std::shared_ptr< CacheableObjectArray > | getCacheableObjectArrayField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in std::shared_ptr<CacheableObjectArray> type out param. More... | |
virtual std::vector< char16_t > | getCharArrayField (const std::string &fieldName) const =0 |
Reads the named field and sets its value in char array type out param. More... | |
virtual char16_t | getCharField (const std::string &fieldName) const =0 |
Reads the named field and sets its value in char type out param. More... | |
virtual const std::string & | getClassName () const override=0 |
Return the full name of the class that this pdx instance represents. More... | |
virtual std::vector< double > | getDoubleArrayField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in double array type out param. More... | |
virtual double | getDoubleField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in double type out param. More... | |
virtual void | getField (const std::string &fieldName, int8_t ***value, int32_t &arrayLength, int32_t *&elementLength) const =0 |
Reads the named field and sets its value in array of byte arrays type out param. More... | |
virtual std::shared_ptr< CacheableStringArray > | getFieldNames ()=0 |
Return an unmodifiable list of the field names on this PdxInstance. More... | |
virtual PdxFieldTypes | getFieldType (const std::string &fieldname) const =0 |
Return the type. More... | |
virtual std::vector< float > | getFloatArrayField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in float array type out param. More... | |
virtual float | getFloatField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in float type out param. More... | |
virtual std::vector< int32_t > | getIntArrayField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in int32_t array type out param. More... | |
virtual int32_t | getIntField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in int32_t type out param. More... | |
virtual std::vector< int64_t > | getLongArrayField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in int64_t array type out param. More... | |
virtual int64_t | getLongField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in int64_t type out param. More... | |
virtual std::shared_ptr< PdxSerializable > | getObject ()=0 |
Deserializes and returns the domain object that this instance represents. More... | |
virtual std::vector< int16_t > | getShortArrayField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in int16_t array type out param. More... | |
virtual int16_t | getShortField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in int16_t type out param. More... | |
virtual std::vector< std::string > | getStringArrayField (const std::string &fieldname) const =0 |
Reads the named field as a string array. More... | |
virtual std::string | getStringField (const std::string &fieldname) const =0 |
Reads the named field and sets its value in std::string type out param. More... | |
virtual bool | hasField (const std::string &fieldname)=0 |
Checks if the named field exists and returns the result. More... | |
virtual int32_t | hashcode () const override=0 |
Generates a hashcode based on the identity fields of this PdxInstance. More... | |
virtual bool | isIdentityField (const std::string &fieldname)=0 |
Checks if the named field was PdxWriter#markIdentityField marked as an identity field. More... | |
virtual size_t | objectSize () const override=0 |
virtual bool | operator== (const CacheableKey &other) const override=0 |
Returns true if the given CacheableKey derived object is equals to this instance. More... | |
virtual void | setField (const std::string &fieldName, bool value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, char16_t value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, const std::string &value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, const std::vector< bool > &value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, const std::vector< char16_t > &value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, const std::vector< double > &value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, const std::vector< float > &value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, const std::vector< int16_t > &value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, const std::vector< int32_t > &value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, const std::vector< int64_t > &value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, const std::vector< int8_t > &value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, double value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, float value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, int16_t value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, int32_t value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, int64_t value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, int8_t **value, int32_t arrayLength, int32_t *elementLength)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, signed char value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, std::shared_ptr< Cacheable > value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, std::shared_ptr< CacheableDate > value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, std::shared_ptr< CacheableObjectArray > value)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, std::string *value, int32_t length)=0 |
Set the existing named field to the given value. More... | |
virtual void | setField (const std::string &fieldName, unsigned char value)=0 |
Set the existing named field to the given value. More... | |
virtual void | toData (PdxWriter &output) const override=0 |
serialize this object in geode PDX format. More... | |
virtual std::string | toString () const override=0 |
Prints out all of the identity fields of this PdxInstance. More... | |
Static Public Member Functions | |
template<class _T > | |
static std::shared_ptr< CacheableKey > | create (_T value) |
Factory method that creates the key type that matches the type of value. More... | |
template<class _T > | |
static std::shared_ptr< Serializable > | create (_T value) |
Factory method that creates the Serializable object that matches the type of value. More... | |
Protected Member Functions | |
WritablePdxInstance ()=default | |
constructors More... | |
WritablePdxInstance is a PdxInstance
that also supports field modification using the setField
method.
To get a WritablePdxInstance call PdxInstance#createWriter
.
|
protecteddefault |
constructors
|
staticinherited |
Factory method that creates the key type that matches the type of value.
For user defined derivations of CacheableKey, the method apache::geode::client::CacheableKey::create may be overloaded.
|
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.
|
pure virtualinherited |
Creates and returns a WritablePdxInstance
whose initial values are those of this PdxInstance.
This call returns a copy of the current field values so modifications made to the returned value will not modify this PdxInstance.
WritablePdxInstance
|
overridepure virtualinherited |
Deserialize this object.
This is an internal method.
input | to deserialize the PDX object |
Implements apache::geode::client::PdxSerializable.
|
pure virtualinherited |
Reads the named field and sets its value in bool array type out param.
bool* type corresponds to the Java boolean[] type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in bool type out param.
bool type corresponds to the Java boolean type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in signed char array type out param.
int8_t* type corresponds to the Java byte[] type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in signed char type out param.
signed char type corresponds to the Java byte type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in std::shared_ptr<CacheableDate> type out param.
std::shared_ptr<CacheableDate> type is corresponding to java Java.util.date type.
fieldname | name of the field to read std::shared_ptr<CacheableDate> type. |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in std::shared_ptr<Cacheable> type out param.
std::shared_ptr<Cacheable> type corresponds to the Java object type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. For deserialization C++ Native Client requires the domain class to be registered. |
|
pure virtualinherited |
Reads the named field and sets its value in std::shared_ptr<CacheableObjectArray> type out param.
For deserialization C++ Native Client requires the domain class to be registered. std::shared_ptr<CacheableObjectArray> type corresponds to the Java Object[] type.
fieldname | name of the field to read. std::shared_ptr<CacheableObjectArray> type. |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in char array type out param.
char16_t* type corresponds to the Java char[] type.
fieldName | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in char type out param.
char type corresponds to the Java char type.
IllegalStateException | if PdxInstance doesn't have the named field. |
|
overridepure virtualinherited |
Return the full name of the class that this pdx instance represents.
IllegalStateException | if the PdxInstance typeid is not defined yet, to get classname or if PdxType is not defined for PdxInstance. |
Implements apache::geode::client::PdxSerializable.
|
pure virtualinherited |
Reads the named field and sets its value in double array type out param.
double* type corresponds to the Java double[] type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in double type out param.
double type corresponds to the Java double type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in array of byte arrays type out param.
int8_t** type corresponds to the Java byte[][] type.
fieldName | name of the field to read. |
value | value of the field to be set with array of byte arrays type. |
arrayLength | arrayLength is set to the number of byte arrays. |
elementLength | elementLength is set to individual byte array lengths. |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Return an unmodifiable list of the field names on this PdxInstance.
|
pure virtualinherited |
Return the type.
IllegalStateException | if the PdxInstance typeid is not defined yet, to get classname or if PdxType is not defined for PdxInstance. |
|
pure virtualinherited |
Reads the named field and sets its value in float array type out param.
float* type corresponds to the Java float[] type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in float type out param.
float type corresponds to the Java float type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in int32_t array type out param.
int32_t* type corresponds to the Java int[] type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in int32_t type out param.
int32_t type corresponds to the Java int type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in int64_t array type out param.
int64_t* type corresponds to the Java long[] type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in int64_t type out param.
int64_t type corresponds to the Java long type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Deserializes and returns the domain object that this instance represents.
For deserialization C++ Native Client requires the domain class to be registered.
|
pure virtualinherited |
Reads the named field and sets its value in int16_t array type out param.
int16_t* type corresponds to the Java short[] type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in int16_t type out param.
int16_t type corresponds to the Java short type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field as a string array.
std::vector<std::string> type corresponds to the Java String[] type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Reads the named field and sets its value in std::string type out param.
std::string type corresponds to the Java String type.
fieldname | name of the field to read |
IllegalStateException | if PdxInstance doesn't have the named field. |
|
pure virtualinherited |
Checks if the named field exists and returns the result.
This can be useful when writing code that handles more than one version of a PDX class.
fieldname | the name of the field to check |
true
if the named field exists; otherwise false
|
overridepure virtualinherited |
Generates a hashcode based on the identity fields of this PdxInstance.
If a PdxInstance has marked identity fields using PdxWriter#markIdentityField
then only the marked identity fields are its identity fields. Otherwise all its fields are identity fields.
For deserialization C++ Native Client requires the domain class to be registered. If the field is an array then all array elements are used for hashcode computation. Otherwise the raw bytes of its value are used to compute the hash code.
IllegalStateException | if the field contains an element that is not of CacheableKey derived type. |
Implements apache::geode::client::CacheableKey.
|
pure virtualinherited |
Checks if the named field was PdxWriter#markIdentityField
marked as an identity field.
Note that if no fields have been marked then all the fields are used as identity fields even though this method will return false
since none of them have been marked.
fieldname | the name of the field to check |
true
if the named field exists and was marked as an identify field; otherwise false
|
overridepure virtualinherited |
Reimplemented from apache::geode::client::Serializable.
|
overridepure virtualinherited |
Returns true if the given CacheableKey derived object is equals to this instance.
If other
is not a PdxInstance then it is not equal to this instance. NOTE: Even if other
is the result of calling getObject()
it will not be equal to this instance
.
Otherwise equality of two PdxInstances is determined as follows:
If one of the instances does not have a field that the other one does then equals will assume it has the field with a default value. If a PdxInstance has marked identity fields using markIdentityField
then only the marked identity fields are its identity fields. Otherwise all its fields are identity fields.
An identity field is equal if all the following are true:
If an identity field is of type derived from Cacheable
then it is deserialized. For deserialization C++ Native Client requires the domain class to be registered. If the deserialized object is an array then all array elements are used to determine equality. If an identity field is of type CacheableObjectArray
then it is deserialized and all array elements are used to determine equality. For all other field types the value does not need to be deserialized. Instead the serialized raw bytes are compared and used to determine equality.
other | the other instance to compare to this. |
true
if this instance is equal to other
. IllegalStateException | if the field contains an element that is not of CacheableKey derived type. |
Implements apache::geode::client::CacheableKey.
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. bool type is corresponding to java boolean type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type bool |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. char type is corresponding to java char type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type char |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. char* type is corresponding to java String type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type char* |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. bool* type is corresponding to java boolean[] type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type bool array |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. char16_t* type is corresponding to java char[] type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type char16_t array |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. double* type is corresponding to java double[] type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type double array |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. float* type is corresponding to java float[] type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type float array |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. int16_t* type is corresponding to java short[] type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type int16_t array |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. int32_t* type is corresponding to java int[] type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type int32_t array |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. int64_t* type is corresponding to java long[] type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type int64_t array |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. int8_t* type is corresponding to java byte[] type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type int8_t array |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. double type is corresponding to java double type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type double |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. float type is corresponding to java float type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type float |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. int16_t type is corresponding to java short type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type int16_t |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. int32_t type is corresponding to java int type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type int32_t |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. int64_t type is corresponding to java long type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type int64_t |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. int8_t** type is corresponding to java byte[][] type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type array of byte arrays |
arrayLength | The number of byte arrays. |
elementLength | The lengths of individual byte arrays. |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. signed char type is corresponding to java byte type. For C++ on Windows and Linux, signed char type is corresponding to int8_t type. However C++ users on Solaris should always use this api after casting int8_t to signed char.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type signed char |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. std::shared_ptr<Cacheable> type is corresponding to java object type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type std::shared_ptr<Cacheable> |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. std::shared_ptr<CacheableDate> type is corresponding to java Java.util.date type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type std::shared_ptr<CacheableDate> |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. std::shared_ptr<CacheableObjectArray> type is corresponding to java Object[] type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type std::shared_ptr<CacheableObjectArray> |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. char** type is corresponding to java String[] type.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type char* array |
length | The number of elements in CString array type. |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
pure virtual |
Set the existing named field to the given value.
The setField method has copy-on-write semantics. So for the modifications to be stored in the cache the WritablePdxInstance must be put into a region after setField has been called one or more times. unsigned char type is corresponding to java byte type. For C++ on Windows and Linux, unsigned char type is corresponding to int8_t type. However C++ users on Solaris should always use this api after casting int8_t to unsigned char.
fieldName | name of the field whose value will be set |
value | value that will be set to the field of type unsigned char |
IllegalStateException | if the named field does not exist or if the type of the value is not compatible with the field. |
|
overridepure virtualinherited |
serialize this object in geode PDX format.
This is an internal method.
output | to serialize the PDX object |
Implements apache::geode::client::PdxSerializable.
|
overridepure virtualinherited |
Prints out all of the identity fields of this PdxInstance.
If a PdxInstance has marked identity fields using PdxWriter#markIdentityField
then only the marked identity fields are its identity fields. Otherwise all its fields are identity fields
. For deserialization C++ Native Client requires the domain class to be registered.
Reimplemented from apache::geode::client::Serializable.