23 #ifndef CLIENT_PROTOCOL_H
24 #define CLIENT_PROTOCOL_H
48 friend std::ostream& operator<<(std::ostream& os,
const ResponseMessage& msg);
65 void setSequenceNumber(
int sn);
67 friend std::ostream& operator<<(std::ostream& os,
const InsertResponse& msg);
83 void setSdSize(
int s);
84 int getSdSize()
const;
85 void setSequenceNumber(
int sn);
86 int getSequenceNumber()
const;
87 void setFilesNumber(
int n);
88 int getFilesNumber()
const;
89 const std::map<std::string, std::string>& getSdFields()
const;
90 const std::map<std::string, std::string>& getDataItems()
const;
91 std::map<std::string, std::string>& getDataItems();
92 void addSetDescriptorField(
const std::string& key,
const std::string& value);
93 void addDataItem(
const std::string& itemName,
const std::string& itemFile);
95 friend std::ostream& operator<<(std::ostream& os,
const GetResponse& msg);
102 std::map<std::string, std::string> setDescriptorFields;
103 std::map<std::string, std::string> dataItems;
116 void setFoundCount(
int c);
117 int getFoundCount()
const;
118 void addSdFields(
int sn,
const std::map<std::string, std::string>& fields);
120 friend std::ostream& operator<<(std::ostream& os,
const SearchResponse& msg);
126 std::map<int, std::map<std::string, std::string> > setDescriptorFields;
140 void setDssNumber(
int n);
141 void addDssEntry(
const std::string& dssEntry);
143 friend std::ostream& operator<<(std::ostream& os,
const SpeclistResponse& msg);
148 std::vector<std::string> dssList;
165 std::string createInsertRequest(
const std::string& dssName, std::map<std::string, std::string>& sdFields,
const std::map<std::string, std::string>& dataItems);
166 std::string createRemoveRequest(
const std::string& sequenceNumber,
const std::string& dssName);
167 std::string createGetRequest(
const std::string& sequenceNumber,
const std::string& dssName);
168 std::string createSearchRequest(
const std::string& dssName, std::map<std::string, std::string>& sdQueryFields);
176 std::string createInsertRequest(
const std::string& input, std::map<std::string, std::string>& dataItems);
177 std::string createRemoveRequest(
const std::string& input);
178 std::string createGetRequest(
const std::string& input);
179 std::string createSearchRequest(
const std::string& input);
189 GetResponse parseGetResponse(
const std::string& response);
A generic response message of the protocol. A response message is defined by a return code which spec...
Definition: client_protocol.h:40
A response message to SEARCH request. A response message to SEARCH requests is defined by the SetDesc...
Definition: client_protocol.h:111
A response message to INSERT requests. A response message to INSERT requests is simply defined throug...
Definition: client_protocol.h:60
Convenience class to simplify the protocol messages handling. This class is useful to parse the "raw"...
Definition: client_protocol.h:157
A response message to GET requests. A response message to GET requests is defined by the SetDescripto...
Definition: client_protocol.h:78
Definition: client_protocol.cpp:725
ResponseCode
Definition: protocol.h:45
A response message to SPECLIST requests. A reponse message to SPECLIST request may be negative...
Definition: client_protocol.h:134
std::string responseCodeString(ResponseCode code)
Definition: client_protocol.cpp:671
std::string getExtendedErrorMessage(ResponseCode code)
Definition: client_protocol.cpp:617