00001 #ifndef __GEMFIRE_CACHEATTRIBUTESFACTORY_H__ 00002 #define __GEMFIRE_CACHEATTRIBUTESFACTORY_H__ 00003 00004 /*========================================================================= 00005 * (c) Copyright 2002-2007, GemStone Systems, Inc. All Rights Reserved. 00006 * 1260 NW Waterhouse Ave., Suite 200, Beaverton, OR 97006 00007 *======================================================================== 00008 */ 00009 00010 #include "gfcpp_globals.hpp" 00011 #include "ExceptionTypes.hpp" 00012 #include "CacheAttributes.hpp" 00013 00014 00020 namespace gemfire 00021 { 00022 00028 class CPPCACHE_EXPORT CacheAttributesFactory 00029 { 00033 public: 00034 00040 CacheAttributesFactory() throw(); 00041 00045 virtual ~CacheAttributesFactory(); 00046 00047 // ATTRIBUTES 00048 00053 void setRedundancyLevel( int redundancyLevel ) throw(); 00054 00058 void setEndpoints( const char* endPoints ) throw(); 00059 00060 // FACTORY METHOD 00061 00068 CacheAttributesPtr createCacheAttributes() throw(IllegalStateException); 00069 00070 00071 private: 00072 00073 CacheAttributesPtr m_cacheAttributes; 00074 00075 // Never implemented 00076 CacheAttributesFactory(const CacheAttributesPtr& cacheAttributes) throw(); 00077 }; 00078 00079 } //namespace gemfire 00080 00081 00082 #endif //ifndef __GEMFIRE_CACHEATTRIBUTESFACTORY_H__