00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00028 #ifndef _OSRTMSGBUFIF_H_
00029 #define _OSRTMSGBUFIF_H_
00030
00031 #include "rtxsrc/OSRTContext.h"
00032 #include "rtxsrc/OSRTCtxtHolderIF.h"
00033
00034 class OSXMLReaderClass;
00035
00047 class EXTRTCLASS OSRTMessageBufferIF {
00048 public:
00049 enum Type {
00050 BEREncode, BERDecode, PEREncode, PERDecode, XEREncode, XERDecode,
00051 XMLEncode, XMLDecode, JSONEncode, JSONDecode, Stream
00052 } ;
00053 protected:
00058 virtual ~OSRTMessageBufferIF () {}
00059
00060 public:
00061
00065 virtual void* getAppInfo () = 0;
00066
00073 virtual size_t getByteIndex () = 0;
00074
00075 virtual OSRTCtxtPtr getContext () = 0;
00076 virtual OSCTXT* getCtxtPtr () = 0;
00077
00086 virtual OSOCTET* getMsgCopy () = 0;
00087
00094 virtual const OSOCTET* getMsgPtr () = 0;
00095
00103 virtual int init () = 0;
00104
00116 virtual int initBuffer (OSOCTET* pMsgBuf, size_t msgBufLen) = 0;
00117
00130 virtual OSBOOL isA (Type bufferType) = 0;
00131
00135 virtual void setAppInfo (void* pAppInfo) = 0;
00136
00140 virtual void setNamespace
00141 (const OSUTF8CHAR* , const OSUTF8CHAR* ,
00142 OSRTDList* = 0) {}
00143
00149 virtual void setDiag (OSBOOL value=TRUE) = 0;
00150
00151 };
00152
00155 #endif