12 #include <rapidjson/document.h>
13 #include <rapidjson/stringbuffer.h>
14 #include <boost/algorithm/string.hpp>
15 #include <boost/enable_shared_from_this.hpp>
38 boost::function<
void(contrail_rapidjson::Document&,
39 boost::system::error_code&, std::string,
int, std::string,
40 std::map<std::string, std::string>*)> cb);
47 boost::function<void(contrail_rapidjson::Document&,
48 boost::system::error_code&, std::string,
int, std::string,
49 std::map<std::string, std::string>*)>
GetCallBack();
53 boost::function<void(contrail_rapidjson::Document&,
54 boost::system::error_code&, std::string,
int, std::string,
55 std::map<std::string, std::string>*)>
cb_;
60 class VncApi :
public boost::enable_shared_from_this<VncApi> {
65 std::vector<std::string>
hdr_;
70 void Add2URI(std::ostringstream &uri, std::string &qadded, std::string key,
71 std::vector<std::string> data);
72 std::string
MakeUri(std::string
type, std::vector<std::string> ids,
73 std::vector<std::string> filters, std::vector<std::string> parents,
74 std::vector<std::string> refs, std::vector<std::string> fields);
76 boost::system::error_code &ec);
82 void GetConfig(std::string
type, std::vector<std::string> ids,
83 std::vector<std::string> filters, std::vector<std::string> parents,
84 std::vector<std::string> refs, std::vector<std::string> fields,
85 boost::function<
void(contrail_rapidjson::Document&,
86 boost::system::error_code &ec, std::string
version,
int status,
88 std::map<std::string, std::string> *headers)> cb);
90 boost::system::error_code &ec);
std::string GetToken(RespBlock *rb) const
std::vector< std::string > hdr_
void Clear(HttpConnection *c=0)
void hex_dump(std::string s)
void RespHandler(RespBlock *rb, std::string &str, boost::system::error_code &ec)
void GetConfig(std::string type, std::vector< std::string > ids, std::vector< std::string > filters, std::vector< std::string > parents, std::vector< std::string > refs, std::vector< std::string > fields, boost::function< void(contrail_rapidjson::Document &, boost::system::error_code &ec, std::string version, int status, std::string reason, std::map< std::string, std::string > *headers)> cb)
void AddBody(std::string s)
std::string MakeUri(std::string type, std::vector< std::string > ids, std::vector< std::string > filters, std::vector< std::string > parents, std::vector< std::string > refs, std::vector< std::string > fields)
std::vector< std::string > kshdr_
boost::function< void(contrail_rapidjson::Document &, boost::system::error_code &, std::string, int, std::string, std::map< std::string, std::string > *)> cb_
void Add2URI(std::ostringstream &uri, std::string &qadded, std::string key, std::vector< std::string > data)
HttpConnection * GetConnection()
RespBlock(HttpConnection *c, std::string uri, boost::function< void(contrail_rapidjson::Document &, boost::system::error_code &, std::string, int, std::string, std::map< std::string, std::string > *)> cb)
boost::function< void(contrail_rapidjson::Document &, boost::system::error_code &, std::string, int, std::string, std::map< std::string, std::string > *)> GetCallBack()
VncApi(EventManager *evm, VncApiConfig *cfg)
void KsRespHandler(RespBlock *rb, RespBlock *orb, std::string &str, boost::system::error_code &ec)
void Reauthenticate(RespBlock *orb)
bool CondTest(std::string s)