1 #ifndef __GEMFIRE_REGIONATTRIBUTES_H__ 2 #define __GEMFIRE_REGIONATTRIBUTES_H__ 15 #include "gfcpp_globals.hpp" 19 #include "ExpirationAttributes.hpp" 22 #include "PartitionResolver.hpp" 52 class AttributesFactory;
53 class AttributesMutator;
97 int getRegionTimeToLive() ;
104 int getRegionIdleTimeout() ;
110 int getEntryTimeToLive() ;
116 int getEntryIdleTimeout() ;
142 int getInitialCapacity()
const;
147 float getLoadFactor()
const;
153 uint8_t getConcurrencyLevel()
const;
159 uint32_t getLruEntriesLimit( )
const;
175 const char* getPoolName()
const;
192 virtual int32_t classId( )
const;
195 virtual int8_t typeId( )
const;
206 const char* getCacheLoaderLibrary();
212 const char* getCacheLoaderFactory();
218 const char* getCacheListenerLibrary();
224 const char* getCacheListenerFactory();
230 const char* getCacheWriterLibrary();
236 const char* getCacheWriterFactory();
242 const char* getPartitionResolverLibrary();
248 const char* getPartitionResolverFactory();
260 void validateSerializableAttributes( );
265 const char* getEndpoints();
270 bool getClientNotificationEnabled()
const;
276 const char* getPersistenceLibrary();
282 const char* getPersistenceFactory();
302 bool getCloningEnabled( ) {
return m_isClonable; }
314 static int32_t compareStringAttribute(
char* attributeA,
char* attributeB);
318 static void copyStringAttribute(
char*& lhs,
const char* rhs);
320 void setCacheListener(
const char* libpath,
const char* factoryFuncName);
321 void setCacheLoader (
const char* libpath,
const char* factoryFuncName);
322 void setCacheWriter (
const char* libpath,
const char* factoryFuncName);
323 void setPartitionResolver(
const char* libpath,
const char* factoryFuncName);
324 void setPersistenceManager(
const char* lib,
const char* func,
const PropertiesPtr& config);
325 void setEndpoints(
const char* endpoints );
326 void setPoolName(
const char* poolName );
327 void setCloningEnabled(
bool isClonable );
328 void setCachingEnabled(
bool enable);
329 void setLruEntriesLimit(
int limit);
332 void setConcurrencyChecksEnabled(
bool enable );
333 inline bool getEntryExpiryEnabled()
const 335 return (m_entryTimeToLive != 0 || m_entryIdleTimeout != 0);
338 inline bool getRegionExpiryEnabled()
const 340 return (m_regionTimeToLive != 0 || m_regionIdleTimeout != 0);
357 uint32_t m_lruEntriesLimit;
359 uint32_t m_maxValueDistLimit;
360 uint32_t m_entryIdleTimeout;
361 uint32_t m_entryTimeToLive;
362 uint32_t m_regionIdleTimeout;
363 uint32_t m_regionTimeToLive;
365 uint32_t m_initialCapacity;
367 uint8_t m_concurrencyLevel;
368 char* m_cacheLoaderLibrary;
369 char* m_cacheWriterLibrary;
370 char* m_cacheListenerLibrary;
371 char* m_partitionResolverLibrary;
372 char* m_cacheLoaderFactory;
373 char* m_cacheWriterFactory;
374 char* m_cacheListenerFactory;
375 char* m_partitionResolverFactory;
378 bool m_clientNotificationEnabled;
379 char* m_persistenceLibrary;
380 char* m_persistenceFactory;
385 bool m_isConcurrencyChecksEnabled;
389 friend class CacheImpl;
391 friend class RegionInternal;
392 friend class RegionXmlCreation;
401 #endif //ifndef __GEMFIRE_REGIONATTRIBUTES_H__
Provide operations for writing primitive data values, byte arrays, strings, Serializable objects to a...
Definition: DataOutput.hpp:62
Action
Definition: ExpirationAction.hpp:29
bool getCachingEnabled() const
If true, this region will store data in the current process.
Definition: RegionAttributes.hpp:131
This class manages subregions and cached data.
Definition: Region.hpp:75
virtual uint32_t objectSize() const
return the size in bytes of the instance being serialized.
Definition: RegionAttributes.hpp:198
Creates instances of RegionAttributes.
Definition: AttributesFactory.hpp:139
This namespace contains all the GemFire C++ API classes, enumerations and globals.
Definition: Assert.hpp:19
Defines attributes for configuring a region.
Definition: RegionAttributes.hpp:59
This abstract base class is the superclass of all user objects in the cache that can be serialized...
Definition: Serializable.hpp:39
Supports modification of certain region attributes after the region has been created.
Definition: AttributesMutator.hpp:39
#define CPPCACHE_EXPORT
Defines a GemFire CPPCACHE export.
Definition: gf_base.hpp:51
PolicyType
Values for setting PolicyType.
Definition: DiskPolicyType.hpp:29
Cache are obtained from create method on the CacheFactory#create class.
Definition: Cache.hpp:44
bool getConcurrencyChecksEnabled()
Returns true if concurrent update checks are turned on for this region.
Definition: RegionAttributes.hpp:309
Scope
Values for setting Scope.
Definition: ScopeType.hpp:35
const char * getPoolName()
TODO Returns the name of the Pool that this region will use to communicate with servers, if any.
Definition: RegionAttributes.hpp:301