Apache Geode Native C++ Reference 1.15.0
|
A PdxReader will be passed to PdxSerializable.fromData or during deserialization of a PDX. More...
#include <PdxReader.hpp>
Public Member Functions | |
virtual bool | hasField (const std::string &fieldName)=0 |
Checks if the named field exists and returns the result. More... | |
virtual bool | isIdentityField (const std::string &fieldName)=0 |
Checks if the named field was PdxWriter#markIdentityField marked as an identity field. More... | |
PdxReader () | |
constructors More... | |
virtual int8_t ** | readArrayOfByteArrays (const std::string &fieldName, int32_t &arrayLength, int32_t **elementLength)=0 |
Read a int8_t** value from the PdxReader and sets ArrayOfByteArray's length and individual ByteArray's length. More... | |
virtual bool | readBoolean (const std::string &fieldName)=0 |
Read a bool value from the PdxReader . More... | |
virtual std::vector< bool > | readBooleanArray (const std::string &fieldName)=0 |
Read a bool* value from the PdxReader and sets array length. More... | |
virtual int8_t | readByte (const std::string &fieldName)=0 |
Read a int8_t value from the PdxReader . More... | |
virtual std::vector< int8_t > | readByteArray (const std::string &fieldName)=0 |
Read a int8_t* value from the PdxReader and sets array length. More... | |
virtual char16_t | readChar (const std::string &fieldName)=0 |
Read a wide char value from the PdxReader . More... | |
virtual std::vector< char16_t > | readCharArray (const std::string &fieldName)=0 |
Read a char16_t* value from the PdxReader and sets array length. More... | |
virtual std::shared_ptr< CacheableDate > | readDate (const std::string &fieldName)=0 |
Read a std::shared_ptr<CacheableDate> value from the PdxReader . More... | |
virtual double | readDouble (const std::string &fieldName)=0 |
Read a double value from the PdxReader . More... | |
virtual std::vector< double > | readDoubleArray (const std::string &fieldName)=0 |
Read a double* value from the PdxReader and sets array length. More... | |
virtual float | readFloat (const std::string &fieldName)=0 |
Read a float value from the PdxReader . More... | |
virtual std::vector< float > | readFloatArray (const std::string &fieldName)=0 |
Read a float* value from the PdxReader and sets array length. More... | |
virtual int32_t | readInt (const std::string &fieldName)=0 |
Read a int32_t value from the PdxReader . More... | |
virtual std::vector< int32_t > | readIntArray (const std::string &fieldName)=0 |
Read a int32_t* value from the PdxReader and sets array length. More... | |
virtual int64_t | readLong (const std::string &fieldName)=0 |
Read a int64_t value from the PdxReader . More... | |
virtual std::vector< int64_t > | readLongArray (const std::string &fieldName)=0 |
Read a int64_t* value from the PdxReader and sets array length. More... | |
virtual std::shared_ptr< Cacheable > | readObject (const std::string &fieldName)=0 |
Read a std::shared_ptr<Cacheable> value from the PdxReader . More... | |
virtual std::shared_ptr< CacheableObjectArray > | readObjectArray (const std::string &fieldName)=0 |
Read a std::shared_ptr<CacheableObjectArray> value from the PdxReader . More... | |
virtual int16_t | readShort (const std::string &fieldName)=0 |
Read a int16_t value from the PdxReader . More... | |
virtual std::vector< int16_t > | readShortArray (const std::string &fieldName)=0 |
Read a int16_t* value from the PdxReader and sets array length. More... | |
virtual std::string | readString (const std::string &fieldName)=0 |
Read a std::string value from the PdxReader . More... | |
virtual std::vector< std::string > | readStringArray (const std::string &fieldName)=0 |
Read a array of strings from the PdxReader . More... | |
virtual std::shared_ptr< PdxUnreadFields > | readUnreadFields ()=0 |
This method returns an object that represents all the unread fields which must be passed to PdxWriter#writeUnreadFields in the toData code. More... | |
virtual | ~PdxReader () |
destructor More... | |
A PdxReader will be passed to PdxSerializable.fromData or during deserialization of a PDX.
The domain class needs to deserialize field members using this abstract class. This class is implemented by Native Client. Each readXXX call will return the field's value. If the serialized PDX does not contain the named field then a default value will be returned. Standard Java defaults are used. For Objects this is null and for primitives it is 0 or 0.0.
nullptr
, non-empty strings returned from PdxReader::readString() or PdxReader::readWideString() must be freed with DataInput::freeUTFMemory(). Arrays returned from PdxReader::readStringArray() or PdxReader::readWideStringArray() must be freed with GF_SAFE_DELETE_ARRAY
once their constituent strings have been freed with DataInput::freeUTFMemory().
|
inline |
constructors
|
inlinevirtual |
destructor
|
pure virtual |
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
|
pure virtual |
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
|
pure virtual |
Read a int8_t** value from the PdxReader
and sets ArrayOfByteArray's length and individual ByteArray's length.
C++ int8_t** is mapped to Java byte[][].
fieldName | name of the field to read |
arrayLength | length is set with number of int8_t* elements |
elementLength | elementLength is set with the length value of individual byte arrays. |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a bool value from the PdxReader
.
C++ bool is mapped to Java boolean
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a bool* value from the PdxReader
and sets array length.
C++ bool* is mapped to Java boolean[]
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a int8_t value from the PdxReader
.
C++ int8_t is mapped to Java byte
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a int8_t* value from the PdxReader
and sets array length.
C++ int8_t* is mapped to Java byte[].
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a wide char value from the PdxReader
.
C++ char16_t is mapped to Java char
fieldName | name of the field to read. |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a char16_t* value from the PdxReader
and sets array length.
C++ char16_t* is mapped to Java char[].
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a std::shared_ptr<CacheableDate> value from the PdxReader
.
C++ std::shared_ptr<CacheableDate> is mapped to Java Date
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a double value from the PdxReader
.
C++ double is mapped to Java double
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a double* value from the PdxReader
and sets array length.
C++ double* is mapped to Java double[].
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a float value from the PdxReader
.
C++ float is mapped to Java float
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a float* value from the PdxReader
and sets array length.
C++ float* is mapped to Java float[].
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a int32_t value from the PdxReader
.
C++ int32_t is mapped to Java int
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a int32_t* value from the PdxReader
and sets array length.
C++ int32_t* is mapped to Java int[].
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a int64_t value from the PdxReader
.
C++ int64_t is mapped to Java long
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a int64_t* value from the PdxReader
and sets array length.
C++ int64_t* is mapped to Java long[].
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a std::shared_ptr<Cacheable> value from the PdxReader
.
C++ std::shared_ptr<Cacheable> is mapped to Java object
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a std::shared_ptr<CacheableObjectArray> value from the PdxReader
.
C++ std::shared_ptr<CacheableObjectArray> is mapped to Java Object[].
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a int16_t value from the PdxReader
.
C++ int16_t is mapped to Java short
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a int16_t* value from the PdxReader
and sets array length.
C++ int16_t* is mapped to Java short[].
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a std::string value from the PdxReader
.
C++ std::string is mapped to Java String
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
Read a array of strings from the PdxReader
.
C++ std::vector<std::string> is mapped to Java String[].
fieldName | name of the field to read |
IllegalStateException | if PdxReader doesn't have the named field. |
|
pure virtual |
This method returns an object that represents all the unread fields which must be passed to PdxWriter#writeUnreadFields
in the toData code.
Note that if CacheFactory#setPdxIgnoreUnreadFields
is set to true
then this method will always return an object that has no unread fields.