00001 #ifndef _GEMFIRE_CACHEABLEUNDEFINED_HPP_ 00002 #define _GEMFIRE_CACHEABLEUNDEFINED_HPP_ 00003 00004 00005 /*========================================================================= 00006 * Copyright (c) 2002-2014 Pivotal Software, Inc. All Rights Reserved. 00007 * This product is protected by U.S. and international copyright 00008 * and intellectual property laws. Pivotal products are covered by 00009 * more patents listed at http://www.pivotal.io/patents. 00010 *========================================================================= 00011 */ 00012 00013 #include "gfcpp_globals.hpp" 00014 #include "gf_types.hpp" 00015 #include "Cacheable.hpp" 00016 00017 00021 namespace gemfire 00022 { 00023 00027 class CPPCACHE_EXPORT CacheableUndefined 00028 : public Cacheable 00029 { 00030 public: 00031 00035 virtual void toData( DataOutput& output ) const; 00036 00040 virtual Serializable* fromData( DataInput& input ); 00041 00045 inline static Serializable* createDeserializable( ) 00046 { 00047 return new CacheableUndefined( ); 00048 } 00049 00055 virtual int32_t classId( ) const; 00056 00062 virtual int8_t typeId( ) const; 00063 00068 virtual int8_t DSFID( ) const; 00069 00073 inline static CacheableUndefinedPtr create( ) 00074 { 00075 return CacheableUndefinedPtr(new CacheableUndefined()); 00076 } 00077 00078 virtual uint32_t objectSize( ) const; 00079 00080 00081 protected: 00082 00084 inline CacheableUndefined( ) { } 00085 00086 00087 private: 00088 00089 // never implemented. 00090 CacheableUndefined& operator = ( const CacheableUndefined& other ); 00091 CacheableUndefined( const CacheableUndefined& other ); 00092 }; 00093 00094 } 00095 00096 00097 #endif // _GEMFIRE_CACHEABLEUNDEFINED_HPP_