18 #ifndef _ACTIVEMQ_COMMANDS_ACTIVEMQSTREAMMESSAGE_H_
19 #define _ACTIVEMQ_COMMANDS_ACTIVEMQSTREAMMESSAGE_H_
23 #pragma warning( disable : 4290 )
43 class ActiveMQStreamMessageImpl;
48 ActiveMQStreamMessageImpl* impl;
50 mutable std::auto_ptr<decaf::io::DataInputStream> dataIn;
51 mutable std::auto_ptr<decaf::io::DataOutputStream> dataOut;
55 const static unsigned char ID_ACTIVEMQSTREAMMESSAGE = 27;
67 virtual
unsigned char getDataStructureType()
const;
73 virtual std::
string toString() const;
77 virtual
void onSend();
81 virtual cms::StreamMessage* clone()
const {
88 virtual void clearBody();
92 virtual ValueType getNextValueType()
const;
96 virtual bool readBoolean()
const;
98 virtual void writeBoolean(
bool value);
100 virtual unsigned char readByte()
const;
102 virtual void writeByte(
unsigned char value);
104 virtual int readBytes(std::vector<unsigned char>& value)
const;
106 virtual void writeBytes(
const std::vector<unsigned char>& value);
108 virtual int readBytes(
unsigned char* buffer,
int length)
const;
110 virtual void writeBytes(
const unsigned char* value,
int offset,
int length);
112 virtual char readChar()
const;
114 virtual void writeChar(
char value);
116 virtual float readFloat()
const;
118 virtual void writeFloat(
float value);
120 virtual double readDouble()
const;
122 virtual void writeDouble(
double value);
124 virtual short readShort()
const;
126 virtual void writeShort(
short value);
128 virtual unsigned short readUnsignedShort()
const;
130 virtual void writeUnsignedShort(
unsigned short value);
132 virtual int readInt()
const;
134 virtual void writeInt(
int value);
136 virtual long long readLong()
const;
138 virtual void writeLong(
long long value);
140 virtual std::string readString()
const;
142 virtual void writeString(
const std::string& value);
148 void initializeReading()
const;
150 void initializeWriting();