gemfire::Properties Class Reference

Inherits gemfire::Serializable.


Detailed Description

Contains a set of (key, value) pair properties with key being the name of the property; value, the value of the property.

Public Member Functions

void addAll (const PropertiesPtr &other)
 Add the contents of other to this instance, replacing any existing values with those from other.
virtual int32_t classId () const
 Return class id for serialization.
virtual int8_t DSFID () const
CacheablePtr find (const CacheableKeyPtr &key)
 Return the value for the given CacheableKey, or NULLPTR if not found.
CacheableStringPtr find (const char *key)
 Return the value for the given key, or NULLPTR if not found.
void foreach (Visitor &visitor) const
 Execute the Visitor's visit( const char* key, const char* value ) method for each entry in the collection.
virtual SerializablefromData (DataInput &input)
uint32_t getSize () const
 Return the number of entries in the collection.
void insert (const CacheableKeyPtr &key, const CacheablePtr &value)
 Add or update Cacheable value for CacheableKey.
void insert (const char *key, const int value)
 Add or update the int value for key.
void insert (const char *key, const char *value)
 Add or update the string value for key.
void load (const char *fileName)
 Read property values from a file, overriding what is currently in the properties object.
virtual uint32_t objectSize () const
void preserveSB () const
 Atomically increment reference count.
int32_t refCount ()
 
Returns:
the reference count

void releaseSB () const
 Atomically decrement reference count, the SharedBase object is automatically deleted when its reference count goes to zero.
void remove (const CacheableKeyPtr &key)
 Remove the CacheableKey from the collection.
void remove (const char *key)
 Remove the key from the collection.
virtual void toData (DataOutput &output) const
virtual
CacheableStringPtr 
toString () const
 Display this object as 'string', which depends on the implementation in the subclasses.
virtual int8_t typeId () const
 Return type id for serialization.
virtual ~Properties ()
 destructor.

Static Public Member Functions

template<class PRIM>
static SerializablePtr create (const PRIM value)
 Factory method that creates the Serializable object that matches the type of value.
static PropertiesPtr create ()
 Factory method, returns an empty collection.
static SerializablecreateDeserializable ()
 Return an empty instance for deserialization.
static void registerPdxSerializer (PdxSerializerPtr pdxSerializer)
 Register the PDX serializer which can handle serialization for instances of user domain classes.
static void registerPdxType (TypeFactoryMethodPdx creationFunction)
static void registerType (TypeFactoryMethod creationFunction)

Constructor & Destructor Documentation

virtual gemfire::Properties::~Properties (  )  [virtual]

destructor.


Member Function Documentation

void gemfire::Properties::addAll ( const PropertiesPtr other  ) 

Add the contents of other to this instance, replacing any existing values with those from other.

virtual int32_t gemfire::Properties::classId (  )  const [virtual]

Return class id for serialization.

Implements gemfire::Serializable.

template<class PRIM>
static SerializablePtr gemfire::Serializable::create ( const PRIM  value  )  [inline, static, inherited]

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.

Reimplemented in gemfire::CacheableKey.

static PropertiesPtr gemfire::Properties::create (  )  [static]

Factory method, returns an empty collection.

static Serializable* gemfire::Properties::createDeserializable (  )  [static]

Return an empty instance for deserialization.

virtual int8_t gemfire::Serializable::DSFID (  )  const [virtual, inherited]

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::CacheableUndefined, and gemfire::Struct.

CacheablePtr gemfire::Properties::find ( const CacheableKeyPtr key  ) 

Return the value for the given CacheableKey, or NULLPTR if not found.

Exceptions:
NullPointerException if the key is NULLPTR

CacheableStringPtr gemfire::Properties::find ( const char *  key  ) 

Return the value for the given key, or NULLPTR if not found.

Exceptions:
NullPointerException if the key is null

void gemfire::Properties::foreach ( Visitor &  visitor  )  const

Execute the Visitor's visit( const char* key, const char* value ) method for each entry in the collection.

virtual Serializable* gemfire::Properties::fromData ( DataInput input  )  [virtual]

deserialize this object

Implements gemfire::Serializable.

uint32_t gemfire::Properties::getSize (  )  const

Return the number of entries in the collection.

void gemfire::Properties::insert ( const CacheableKeyPtr key,
const CacheablePtr value 
)

Add or update Cacheable value for CacheableKey.

Exceptions:
NullPointerException if the key is NULLPTR

void gemfire::Properties::insert ( const char *  key,
const int  value 
)

Add or update the int value for key.

Exceptions:
NullPointerException if the key is null

void gemfire::Properties::insert ( const char *  key,
const char *  value 
)

Add or update the string value for key.

Exceptions:
NullPointerException if the key is null

void gemfire::Properties::load ( const char *  fileName  ) 

Read property values from a file, overriding what is currently in the properties object.

virtual uint32_t gemfire::Properties::objectSize (  )  const [inline, virtual]

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 from gemfire::Serializable.

void gemfire::SharedBase::preserveSB (  )  const [inherited]

Atomically increment reference count.

int32_t gemfire::SharedBase::refCount (  )  [inline, inherited]

Returns:
the reference count

static void gemfire::Serializable::registerPdxSerializer ( PdxSerializerPtr  pdxSerializer  )  [static, inherited]

Register the PDX serializer which can handle serialization for instances of user domain classes.

See also:
PdxSerializer

static void gemfire::Serializable::registerPdxType ( TypeFactoryMethodPdx  creationFunction  )  [static, inherited]

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  )  [static, inherited]

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.

void gemfire::Properties::remove ( const CacheableKeyPtr key  ) 

Remove the CacheableKey from the collection.

Exceptions:
NullPointerException if the key is NULLPTR

void gemfire::Properties::remove ( const char *  key  ) 

Remove the key from the collection.

Exceptions:
NullPointerException if the key is null

virtual void gemfire::Properties::toData ( DataOutput output  )  const [virtual]

serialize this object

Implements gemfire::Serializable.

virtual CacheableStringPtr gemfire::Serializable::toString (  )  const [virtual, inherited]

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::CacheableKeyType< TObj, TYPEID, TYPENAME, SPRINTFSYM, STRSIZE >, gemfire::CacheableDate, gemfire::CacheableEnum, and gemfire::CacheableString.

virtual int8_t gemfire::Properties::typeId (  )  const [virtual]

Return type id for serialization.

Reimplemented from gemfire::Serializable.


GemFire C++ Cache API Documentation