5 #ifndef __SANDESH_MESSAGE_BUILDER_H__
6 #define __SANDESH_MESSAGE_BUILDER_H__
8 #include <pugixml/pugixml.hpp>
10 #include <sandesh/sandesh_types.h>
11 #include <sandesh/sandesh.h>
19 virtual bool Parse(
const uint8_t *data,
size_t size) = 0;
35 virtual bool Parse(
const uint8_t *data,
size_t size);
41 SandeshHeader& header);
54 virtual bool Parse(
const uint8_t *data,
size_t size);
93 #endif // __SANDESH_MESSAGE_BUILDER_H__
virtual SandeshMessage * Create(const uint8_t *data, size_t size) const =0
DISALLOW_COPY_AND_ASSIGN(SandeshXMLMessageBuilder)
virtual bool Parse(const uint8_t *data, size_t size)=0
static SandeshSyslogMessageBuilder * GetInstance()
virtual bool Parse(const uint8_t *data, size_t size)
const size_t GetSize() const
DISALLOW_COPY_AND_ASSIGN(SandeshXMLMessage)
static SandeshXMLMessageBuilder instance_
virtual ~SandeshSyslogMessage()
virtual SandeshMessage * Create(const uint8_t *data, size_t size) const
virtual ~SandeshXMLMessage()
const pugi::xml_node & GetMessageNode() const
std::string message_type_
virtual const std::string ExtractMessage() const =0
pugi::xml_node message_node_
virtual bool Parse(const uint8_t *data, size_t size)
static SandeshSyslogMessageBuilder instance_
static SandeshXMLMessageBuilder * GetInstance()
virtual const std::string ExtractMessage() const
void SetHeader(const SandeshHeader &header)
DISALLOW_COPY_AND_ASSIGN(SandeshSyslogMessage)
bool ParseHeader(const pugi::xml_node &root, SandeshHeader &header)
virtual ~SandeshMessage()
SandeshSyslogMessageBuilder()
SandeshXMLMessageBuilder()
virtual SandeshMessage * Create(const uint8_t *data, size_t size) const
DISALLOW_COPY_AND_ASSIGN(SandeshSyslogMessageBuilder)
static SandeshMessageBuilder * GetInstance(Type type)
const std::string & GetMessageType() const
const SandeshHeader & GetHeader() const