build-artifacts/win/product/include/gfcpp/WritablePdxInstance.hpp

00001 #ifndef __WRITABLE_PDXINSTANCE_HPP_
00002 #define __WRITABLE_PDXINSTANCE_HPP_
00003 
00004 /*=========================================================================
00005 * Copyright (c) 2002-2014 Pivotal Software, Inc. All Rights Reserved.
00006  * This product is protected by U.S. and international copyright
00007  * and intellectual property laws. Pivotal products are covered by
00008  * more patents listed at http://www.pivotal.io/patents.
00009 *========================================================================
00010 */
00011 
00012 #include "SharedPtr.hpp"
00013 #include "Cacheable.hpp"
00014 
00015 #include "PdxInstance.hpp"
00016 
00017 namespace gemfire {
00018 
00024   class CPPCACHE_EXPORT WritablePdxInstance : public PdxInstance
00025   {
00030   public:
00034     virtual ~WritablePdxInstance(){      
00035     }
00036 
00050     virtual void setField(const char* fieldName, CacheablePtr value) = 0;
00051     
00065     virtual void setField(const char* fieldName, bool value) = 0;
00066 
00082     virtual void setField(const char* fieldName, signed char value) = 0;
00083 
00099     virtual void setField(const char* fieldName, unsigned char value) = 0;
00100 
00114     virtual void setField(const char* fieldName, int16_t value) = 0;
00115 
00129     virtual void setField(const char* fieldName, int32_t value) = 0;
00130 
00144     virtual void setField(const char* fieldName, int64_t value) = 0;
00145 
00159     virtual void setField(const char* fieldName, float value) = 0;
00160 
00174     virtual void setField(const char* fieldName, double value) = 0;
00175 
00189     virtual void setField(const char* fieldName, wchar_t value) = 0;
00190 
00204     virtual void setField(const char* fieldName, char value) = 0;
00205 
00219     virtual void setField(const char* fieldName, CacheableDatePtr value) = 0;
00220 
00236     virtual void setField(const char* fieldName, bool* value, int32_t length) = 0;
00237 
00255     virtual void setField(const char* fieldName, signed char* value, int32_t length) = 0;
00256 
00274     virtual void setField(const char* fieldName, unsigned char* value, int32_t length) = 0;
00275 
00291     virtual void setField(const char* fieldName, int16_t* value, int32_t length) = 0;
00292 
00308     virtual void setField(const char* fieldName, int32_t* value, int32_t length) = 0;
00309 
00325     virtual void setField(const char* fieldName, int64_t* value, int32_t length) = 0;
00326 
00342     virtual void setField(const char* fieldName, float* value, int32_t length) = 0;
00343 
00359     virtual void setField(const char* fieldName, double* value, int32_t length) = 0;
00360 
00374     virtual void setField (const char* fieldName, const wchar_t* value) = 0;
00375 
00389     virtual void setField (const char* fieldName, const char* value) = 0;
00390 
00406     virtual void setField(const char* fieldName, wchar_t* value, int32_t length) = 0;
00407 
00423     virtual void setField(const char* fieldName, char* value, int32_t length) = 0;
00424 
00440     virtual void setField(const char* fieldName, wchar_t** value, int32_t length) = 0;
00441 
00457     virtual void setField(const char* fieldName, char** value, int32_t length) = 0;
00458  
00476     virtual void setField(const char* fieldName, int8_t** value, int32_t arrayLength, int32_t* elementLength) = 0;
00477 
00491     virtual void setField(const char* fieldName, CacheableObjectArrayPtr value) = 0;
00492 
00493   protected:
00497     WritablePdxInstance() {};
00498 
00499   private:
00500     // never implemented.
00501     WritablePdxInstance(const WritablePdxInstance& other);
00502     void operator =(const WritablePdxInstance& other);
00503 
00504   };
00505 }
00506 
00507 #endif /* __WRITABLE_PDXINSTANCE_HPP_ */

GemFire C++ Cache API Documentation