gemfire::AttributesMutator Class Reference

Inherits gemfire::SharedBase.


Detailed Description

Supports modification of certain region attributes after the region has been created.

It is required that the attributes be completely initialized using an AttributesFactory before creating the region. AttributesMutator can be applied to adjusting and tuning a subset of attributes that are modifiable at runtime.

The setter methods all return the previous value of the attribute.

See also:
Region::getAttributesMutator

RegionAttributes

AttributesFactory


Public Member Functions

 AttributesMutator (const RegionPtr &region)
 Internal constructor.
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 setCacheListener (const char *libpath, const char *factoryFuncName)
 Sets cache listener for region.
void setCacheListener (const CacheListenerPtr &aListener)
 Sets cache listener for region.
void setCacheLoader (const char *libpath, const char *factoryFuncName)
 Sets cache loader for region.
void setCacheLoader (const CacheLoaderPtr &aLoader)
 Sets cache loader for region.
void setCacheWriter (const char *libpath, const char *factoryFuncName)
 Sets cache writer for region.
void setCacheWriter (const CacheWriterPtr &aWriter)
 Sets cache writer for region.
int32_t setEntryIdleTimeout (int32_t idleTimeout)
 Sets the idleTimeout duration for region entries.
ExpirationAction::Action setEntryIdleTimeoutAction (ExpirationAction::Action action)
 Set the idleTimeout Action for region entries.
int32_t setEntryTimeToLive (int32_t timeToLive)
 Sets the timeToLive duration for region entries.
ExpirationAction::Action setEntryTimeToLiveAction (ExpirationAction::Action action)
 Set the timeToLive Action for region entries.
uint32_t setLruEntriesLimit (uint32_t entriesLimit)
 Sets the Maximum entry count in the region before LRU eviction.
int32_t setRegionIdleTimeout (int32_t idleTimeout)
 Sets the idleTimeout duration for the region itself.
ExpirationAction::Action setRegionIdleTimeoutAction (ExpirationAction::Action action)
 Set the idleTimeout Action for the region itself.
int32_t setRegionTimeToLive (int32_t timeToLive)
 Sets the timeToLive duration for the region itself.
ExpirationAction::Action setRegionTimeToLiveAction (ExpirationAction::Action action)
 Set the timeToLive Action for the region itself.

Constructor & Destructor Documentation

gemfire::AttributesMutator::AttributesMutator ( const RegionPtr region  ) 

Internal constructor.

Use Region::getAttributesMutator() to acquire the mutator for a region.


Member Function Documentation

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

Atomically increment reference count.

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

Returns:
the reference count

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::AttributesMutator::setCacheListener ( const char *  libpath,
const char *  factoryFuncName 
)

Sets cache listener for region.

The previous cache listener will be replaced with a listener created using the factory function provided in the given library.

Parameters:
libpath path of the library containing cache listener factory function.
factoryFuncName factory function for creating cache listener.

void gemfire::AttributesMutator::setCacheListener ( const CacheListenerPtr aListener  ) 

Sets cache listener for region.

The previous cache listener will be replaced with aListener.

Parameters:
aListener cache listener

void gemfire::AttributesMutator::setCacheLoader ( const char *  libpath,
const char *  factoryFuncName 
)

Sets cache loader for region.

The previous cache loader will be replaced with a loader created using the factory function provided in the given library.

Parameters:
libpath path of the library containing cache loader factory function.
factoryFuncName factory function for creating cache loader.

void gemfire::AttributesMutator::setCacheLoader ( const CacheLoaderPtr aLoader  ) 

Sets cache loader for region.

The previous cache loader will be replaced with aLoader.

Parameters:
aLoader cache loader

void gemfire::AttributesMutator::setCacheWriter ( const char *  libpath,
const char *  factoryFuncName 
)

Sets cache writer for region.

The previous cache writer will be replaced with a writer created using the factory function provided in the given library.

Parameters:
libpath path of the library containing cache writer factory function.
factoryFuncName factory function for creating cache writer.

void gemfire::AttributesMutator::setCacheWriter ( const CacheWriterPtr aWriter  ) 

Sets cache writer for region.

The previous cache writer will be replaced with aWriter.

Parameters:
aWriter cache writer

int32_t gemfire::AttributesMutator::setEntryIdleTimeout ( int32_t  idleTimeout  ) 

Sets the idleTimeout duration for region entries.

Parameters:
idleTimeout the idleTimeout in seconds for entries in this region.
Returns:
the previous value.
Exceptions:
IllegalStateException if the new idleTimeout changes entry expiration from disabled to enabled or enabled to disabled.

ExpirationAction::Action gemfire::AttributesMutator::setEntryIdleTimeoutAction ( ExpirationAction::Action  action  ) 

Set the idleTimeout Action for region entries.

Parameters:
action the idleTimeout ExpirationAction::Action for entries in this region.
Returns:
the previous value.

int32_t gemfire::AttributesMutator::setEntryTimeToLive ( int32_t  timeToLive  ) 

Sets the timeToLive duration for region entries.

Parameters:
timeToLive the timeToLive in seconds for entries in this region.
Returns:
the previous value.
Exceptions:
IllegalStateException if the new timeToLive changes entry expiration from disabled to enabled or enabled to disabled.

ExpirationAction::Action gemfire::AttributesMutator::setEntryTimeToLiveAction ( ExpirationAction::Action  action  ) 

Set the timeToLive Action for region entries.

Parameters:
action the timeToLive ExpirationAction::Action for entries in this region.
Returns:
the previous value.

uint32_t gemfire::AttributesMutator::setLruEntriesLimit ( uint32_t  entriesLimit  ) 

Sets the Maximum entry count in the region before LRU eviction.

Parameters:
entriesLimit the number of entries to allow.
Returns:
the previous value.
Exceptions:
IllegalStateException if the new entriesLimit changes LRU from disabled to enabled or enabled to disabled.

int32_t gemfire::AttributesMutator::setRegionIdleTimeout ( int32_t  idleTimeout  ) 

Sets the idleTimeout duration for the region itself.

Parameters:
idleTimeout the ExpirationAttributes for this region idleTimeout
Returns:
the previous value.
Exceptions:
IllegalStateException if the new idleTimeout changes region expiration from disabled to enabled or enabled to disabled.

ExpirationAction::Action gemfire::AttributesMutator::setRegionIdleTimeoutAction ( ExpirationAction::Action  action  ) 

Set the idleTimeout Action for the region itself.

Parameters:
action the idleTimeout ExpirationAction::Action for this region.
Returns:
the previous value.

int32_t gemfire::AttributesMutator::setRegionTimeToLive ( int32_t  timeToLive  ) 

Sets the timeToLive duration for the region itself.

Parameters:
timeToLive the ExpirationAttributes for this region timeToLive
Returns:
the previous value.
Exceptions:
IllegalStateException if the new timeToLive changes region expiration from disabled to enabled or enabled to disabled.

ExpirationAction::Action gemfire::AttributesMutator::setRegionTimeToLiveAction ( ExpirationAction::Action  action  ) 

Set the timeToLive Action for the region itself.

Parameters:
action the timeToLive ExpirationAction::Action for this region.
Returns:
the previous value.


GemFire C++ Cache API Documentation