00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _CMS_MAPMESSAGE_H_
00019 #define _CMS_MAPMESSAGE_H_
00020
00021 #include <cms/Config.h>
00022 #include <cms/Message.h>
00023
00024 #include <cms/CMSException.h>
00025 #include <cms/MessageFormatException.h>
00026 #include <cms/MessageNotWriteableException.h>
00027
00028 namespace cms {
00029
00071 class CMS_API MapMessage: public Message {
00072 public:
00073
00074 virtual ~MapMessage();
00075
00083 virtual bool isEmpty() const = 0;
00084
00094 virtual std::vector<std::string> getMapNames() const = 0;
00095
00105 virtual bool itemExists(const std::string& name) const = 0;
00106
00120 virtual ValueType getValueType(const std::string& key) const = 0;
00121
00131 virtual bool getBoolean(const std::string& name) const = 0;
00132
00144 virtual void setBoolean(const std::string& name, bool value) = 0;
00145
00155 virtual unsigned char getByte(const std::string& name) const = 0;
00156
00168 virtual void setByte(const std::string& name, unsigned char value) = 0;
00169
00179 virtual std::vector<unsigned char> getBytes(const std::string& name) const = 0;
00180
00192 virtual void setBytes(const std::string& name, const std::vector<unsigned char>& value) = 0;
00193
00203 virtual char getChar(const std::string& name) const = 0;
00204
00216 virtual void setChar(const std::string& name, char value) = 0;
00217
00227 virtual double getDouble(const std::string& name) const = 0;
00228
00240 virtual void setDouble(const std::string& name, double value) = 0;
00241
00251 virtual float getFloat(const std::string& name) const = 0;
00252
00264 virtual void setFloat(const std::string& name, float value) = 0;
00265
00275 virtual int getInt(const std::string& name) const = 0;
00276
00288 virtual void setInt(const std::string& name, int value) = 0;
00289
00299 virtual long long getLong(const std::string& name) const = 0;
00300
00312 virtual void setLong(const std::string& name, long long value) = 0;
00313
00323 virtual short getShort(const std::string& name) const = 0;
00324
00336 virtual void setShort(const std::string& name, short value) = 0;
00337
00347 virtual std::string getString(const std::string& name) const = 0;
00348
00360 virtual void setString(const std::string& name, const std::string& value) = 0;
00361
00362 };
00363
00364 }
00365
00366 #endif