VMware GemFire Native Client Cache Reference  9.0.6
PdxWriter.hpp
1 #ifndef __GEMFIRE_PDXWRITER_H__
2 #define __GEMFIRE_PDXWRITER_H__
3 
4 /*=========================================================================
5 * Copyright (c) 2002-2014 Pivotal Software, Inc. All Rights Reserved.
6  * This product is protected by U.S. and international copyright
7  * and intellectual property laws. Pivotal products are covered by
8  * more patents listed at http://www.pivotal.io/patents.
9 *========================================================================
10 */
11 
12 #include "gfcpp_globals.hpp"
13 #include "gf_types.hpp"
14 #include "CacheableBuiltins.hpp"
15 #include "CacheableDate.hpp"
16 
17 namespace gemfire {
18 
19  class PdxWriter;
20  typedef SharedPtr<PdxWriter> PdxWriterPtr;
21 
28 
29  public:
30 
35 
39  virtual ~PdxWriter(){}
40 
50  virtual PdxWriterPtr writeChar(const char* fieldName, char value) = 0;
51 
61  virtual PdxWriterPtr writeWideChar(const char* fieldName, wchar_t value) = 0;
62 
72  virtual PdxWriterPtr writeBoolean(const char* fieldName, bool value) = 0;
73 
83  virtual PdxWriterPtr writeByte(const char* fieldName, int8_t value) = 0;
84 
94  virtual PdxWriterPtr writeShort(const char* fieldName, int16_t value) = 0;
95 
105  virtual PdxWriterPtr writeInt(const char* fieldName, int32_t value) = 0;
106 
116  virtual PdxWriterPtr writeLong(const char* fieldName, int64_t value) = 0;
117 
127  virtual PdxWriterPtr writeFloat(const char* fieldName, float value) = 0;
128 
138  virtual PdxWriterPtr writeDouble(const char* fieldName, double value) = 0;
139 
149  virtual PdxWriterPtr writeDate(const char* fieldName, CacheableDatePtr date) = 0;
150 
160  virtual PdxWriterPtr writeString(const char* fieldName, const char* value) = 0;
161 
171  virtual PdxWriterPtr writeWideString(const char* fieldName, const wchar_t* value) = 0;
172 
188  virtual PdxWriterPtr writeObject(const char* fieldName, CacheablePtr value) = 0;
189 
200  virtual PdxWriterPtr writeBooleanArray(const char* fieldName, bool* array, int length) = 0;
201 
212  virtual PdxWriterPtr writeWideCharArray(const char* fieldName, wchar_t* array, int length) = 0;
213 
224  virtual PdxWriterPtr writeCharArray(const char* fieldName, char* array, int length) = 0;
225 
236  virtual PdxWriterPtr writeByteArray(const char* fieldName, int8_t* array, int length) = 0;
237 
248  virtual PdxWriterPtr writeShortArray(const char* fieldName, int16_t* array, int length) = 0;
249 
260  virtual PdxWriterPtr writeIntArray(const char* fieldName, int32_t* array, int length) = 0;
261 
272  virtual PdxWriterPtr writeLongArray(const char* fieldName, int64_t* array, int length) = 0;
273 
284  virtual PdxWriterPtr writeFloatArray(const char* fieldName, float* array, int length) = 0;
285 
296  virtual PdxWriterPtr writeDoubleArray(const char* fieldName, double* array, int length) = 0;
297 
308  virtual PdxWriterPtr writeStringArray(const char* fieldName, char** array, int length) = 0;
309 
320  virtual PdxWriterPtr writeWideStringArray(const char* fieldName, wchar_t** array, int length) = 0;
321 
333  virtual PdxWriterPtr writeObjectArray(const char* fieldName, CacheableObjectArrayPtr array) = 0;
334 
346  virtual PdxWriterPtr writeArrayOfByteArrays(const char* fieldName, int8_t** array, int arrayLength, int* elementLength ) = 0;
347 
364  virtual PdxWriterPtr markIdentityField(const char* fieldName) = 0;
365 
374  virtual PdxWriterPtr writeUnreadFields(PdxUnreadFieldsPtr unread) = 0;
375 
376  };
377 }
378 #endif /* PDXWRITER_HPP_ */
379 
A PdxWriter will be passed to PdxSerializable.toData when it is serializing the domain class...
Definition: PdxWriter.hpp:27
Contains generic template definitions for Cacheable types and instantiations for built-in types...
This namespace contains all the GemFire C++ API classes, enumerations and globals.
Definition: Assert.hpp:19
#define CPPCACHE_EXPORT
Defines a GemFire CPPCACHE export.
Definition: gf_base.hpp:51
This abstract base class is the base class of all user objects that have the shared capability of ref...
Definition: SharedBase.hpp:31
PdxWriter()
constructors
Definition: PdxWriter.hpp:34
virtual ~PdxWriter()
destructor
Definition: PdxWriter.hpp:39
Defines a reference counted shared pointer.
Definition: SharedPtr.hpp:35

GemFire C++ Cache API Documentation