A Struct has a StructSet as its parent.
More...
Inherits gemfire::Serializable.
A Struct has a StructSet as its parent.
It contains the field values returned after executing a Query obtained from a QueryService which in turn is obtained from a Cache.
Constructor - meant only for internal use.
virtual int32_t gemfire::Struct::classId |
( |
| ) |
const |
|
virtual |
Factory method that creates the Serializable object that matches the type of value.
For customer defined derivations of Serializable, the method gemfire::createValue may be overloaded. For pointer types (e.g. char*) the method gemfire::createValueArr may be overloaded.
static Serializable* gemfire::Struct::createDeserializable |
( |
| ) |
|
|
static |
Factory function for registration of Struct
.
virtual int8_t gemfire::Struct::DSFID |
( |
| ) |
const |
|
virtual |
Return the data serializable fixed ID size type for internal use.
- Since
- GFE 5.7
Reimplemented from gemfire::Serializable.
virtual const char* gemfire::Struct::getFieldName |
( |
int32_t |
index | ) |
|
|
virtual |
Returns the name of the field corresponding to the index number in the Struct.
bool gemfire::Struct::hasNext |
( |
| ) |
const |
Check whether another field value is available to iterate over in this Struct.
- Returns
- true if available otherwise false.
int32_t gemfire::Struct::length |
( |
| ) |
const |
Get the number of field values available.
- Returns
- the number of field values available.
Get the next field value item available in this Struct.
- Returns
- A smart pointer to the next item in the Struct or NULLPTR if no more available.
virtual uint32_t gemfire::Struct::objectSize |
( |
| ) |
const |
|
inlinevirtual |
Get the field value for the given index number.
- Parameters
-
index | the index number of the field value to get. |
- Returns
- A smart pointer to the field value or NULLPTR if index out of bounds.
const SerializablePtr gemfire::Struct::operator[] |
( |
const char * |
fieldName | ) |
const |
Get the field value for the given field name.
- Parameters
-
fieldName | the name of the field whos value is required. |
- Returns
- A smart pointer to the field value.
- Exceptions
-
IllegalArgumentException | if the field name is not found. |
void gemfire::SharedBase::preserveSB |
( |
| ) |
const |
|
inherited |
Atomically increment reference count.
int32_t gemfire::SharedBase::refCount |
( |
| ) |
|
|
inlineinherited |
- Returns
- the reference count
static void gemfire::Serializable::registerPdxSerializer |
( |
PdxSerializerPtr |
pdxSerializer | ) |
|
|
staticinherited |
Register the PDX serializer which can handle serialization for instances of user domain classes.
- See also
- PdxSerializer
static void gemfire::Serializable::registerPdxType |
( |
TypeFactoryMethodPdx |
creationFunction | ) |
|
|
staticinherited |
register an Pdx instance factory method for a given type.
- Exceptions
-
IllegalStateException | if the typeName has already been registered, or there is an error in registering the type; check errno for more information in the latter case. |
static void gemfire::Serializable::registerType |
( |
TypeFactoryMethod |
creationFunction | ) |
|
|
staticinherited |
register an instance factory method for a given type.
During registration the factory will be invoked to extract the typeId to associate with this function.
- Exceptions
-
IllegalStateException | if the typeId has already been registered, or there is an error in registering the type; check errno for more information in the latter case. |
void gemfire::SharedBase::releaseSB |
( |
| ) |
const |
|
inherited |
Atomically decrement reference count, the SharedBase object is automatically deleted when its reference count goes to zero.
virtual void gemfire::Struct::toData |
( |
DataOutput & |
output | ) |
const |
|
virtual |
Display this object as 'string', which depends on the implementation in the subclasses.
The default implementation renders the classname.
The return value may be a temporary, so the caller has to ensure that the SharedPtr count does not go down to zero by storing the result in a variable or otherwise.
Reimplemented in gemfire::PdxInstance, gemfire::CacheableString, gemfire::CacheableDate, gemfire::CacheableKeyType< TObj, TYPEID, TYPENAME, SPRINTFSYM, STRSIZE >, and gemfire::CacheableEnum.
virtual int8_t gemfire::Struct::typeId |
( |
| ) |
const |
|
virtual |