An immutable wrapper for bytes that can serve as a distributable key object for caching.
More...
Inherits gemfire::CacheableKeyType< TObj, TYPEID, TYPENAME, SPRINTFSYM, STRSIZE >.
An immutable wrapper for bytes that can serve as a distributable key object for caching.
template<typename TObj , int8_t TYPEID, const char * TYPENAME, const char * SPRINTFSYM, int32_t STRSIZE>
Return the classId of the instance being serialized.
This is used by deserialization to determine what instance type to create and deserialize into.
Implements gemfire::Serializable.
Factory method that creates the key type that matches the type of value.
For customer defined derivations of CacheableKey, the method gemfire::createKey may be overloaded. For pointer types (e.g. char*) the method gemfire::createKeyArr may be overloaded.
Factory function to create a new default instance.
Factory function to create an instance with the given value.
static Serializable* gemfire::CacheableByte::createDeserializable |
( |
| ) |
|
|
inlinestatic |
Factory function registered with serialization registry.
virtual int8_t gemfire::Serializable::DSFID |
( |
| ) |
const |
|
virtualinherited |
return the Data Serialization Fixed ID type.
This is used to determine what instance type to create and deserialize into.
Note that this should not be overridden by custom implementations and is reserved only for builtin types.
Reimplemented in gemfire::Struct, and gemfire::CacheableUndefined.
template<typename TObj , int8_t TYPEID, const char * TYPENAME, const char * SPRINTFSYM, int32_t STRSIZE>
template<typename TObj , int8_t TYPEID, const char * TYPENAME, const char * SPRINTFSYM, int32_t STRSIZE>
template<typename TObj , int8_t TYPEID, const char * TYPENAME, const char * SPRINTFSYM, int32_t STRSIZE>
virtual int32_t gemfire::CacheableKeyType< TObj, TYPEID, TYPENAME, SPRINTFSYM, STRSIZE >::logString |
( |
char * |
buffer, |
|
|
int32_t |
maxLength |
|
) |
| const |
|
inlinevirtualinherited |
Copy the string form of the object into a char* buffer for logging purposes.
Reimplemented from gemfire::CacheableKey.
template<typename TObj , int8_t TYPEID, const char * TYPENAME, const char * SPRINTFSYM, int32_t STRSIZE>
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.
Reimplemented from gemfire::Serializable.
template<typename TObj , int8_t TYPEID, const char * TYPENAME, const char * SPRINTFSYM, int32_t STRSIZE>
template<typename TObj , int8_t TYPEID, const char * TYPENAME, const char * SPRINTFSYM, int32_t STRSIZE>
Return true if this key matches other key value.
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.
template<typename TObj , int8_t TYPEID, const char * TYPENAME, const char * SPRINTFSYM, int32_t STRSIZE>
template<typename TObj , int8_t TYPEID, const char * TYPENAME, const char * SPRINTFSYM, int32_t STRSIZE>
template<typename TObj , int8_t TYPEID, const char * TYPENAME, const char * SPRINTFSYM, int32_t STRSIZE>
Return the typeId byte of the instance being serialized.
This is used by deserialization to determine what instance type to create and deserialize into.
Reimplemented from gemfire::Serializable.
template<typename TObj , int8_t TYPEID, const char * TYPENAME, const char * SPRINTFSYM, int32_t STRSIZE>
Gets the contained value.