util/cpp/include/alibabacloud/ossutil.hpp (176 lines of code) (raw):

// This file is auto-generated, don't edit it. Thanks. #ifndef ALIBABACLOUD_OSSUTIL_H_ #define ALIBABACLOUD_OSSUTIL_H_ #include <boost/any.hpp> #include <darabonba/core.hpp> #include <iostream> #include <map> #include <vector> using namespace std; namespace Alibabacloud_OSSUtil { class RuntimeOptions : public Darabonba::Model { public: RuntimeOptions() {} explicit RuntimeOptions(const std::map<string, boost::any> &config) : Darabonba::Model(config) { fromMap(config); }; void validate() override {} map<string, boost::any> toMap() override { map<string, boost::any> res; if (autoretry) { res["autoretry"] = boost::any(*autoretry); } if (ignoreSSL) { res["ignoreSSL"] = boost::any(*ignoreSSL); } if (maxAttempts) { res["maxAttempts"] = boost::any(*maxAttempts); } if (backoffPolicy) { res["backoffPolicy"] = boost::any(*backoffPolicy); } if (backoffPeriod) { res["backoffPeriod"] = boost::any(*backoffPeriod); } if (readTimeout) { res["readTimeout"] = boost::any(*readTimeout); } if (connectTimeout) { res["connectTimeout"] = boost::any(*connectTimeout); } if (localAddr) { res["localAddr"] = boost::any(*localAddr); } if (httpProxy) { res["httpProxy"] = boost::any(*httpProxy); } if (httpsProxy) { res["httpsProxy"] = boost::any(*httpsProxy); } if (noProxy) { res["noProxy"] = boost::any(*noProxy); } if (maxIdleConns) { res["maxIdleConns"] = boost::any(*maxIdleConns); } if (socks5Proxy) { res["socks5Proxy"] = boost::any(*socks5Proxy); } if (socks5NetWork) { res["socks5NetWork"] = boost::any(*socks5NetWork); } if (uploadLimitSpeed) { res["uploadLimitSpeed"] = boost::any(*uploadLimitSpeed); } if (listener) { res["listener"] = boost::any(*listener); } return res; } void fromMap(map<string, boost::any> m) override { if (m.find("autoretry") != m.end()) { autoretry = make_shared<bool>(boost::any_cast<bool>(m["autoretry"])); } if (m.find("ignoreSSL") != m.end()) { ignoreSSL = make_shared<bool>(boost::any_cast<bool>(m["ignoreSSL"])); } if (m.find("maxAttempts") != m.end()) { maxAttempts = make_shared<int>(boost::any_cast<int>(m["maxAttempts"])); } if (m.find("backoffPolicy") != m.end()) { backoffPolicy = make_shared<string>(boost::any_cast<string>(m["backoffPolicy"])); } if (m.find("backoffPeriod") != m.end()) { backoffPeriod = make_shared<int>(boost::any_cast<int>(m["backoffPeriod"])); } if (m.find("readTimeout") != m.end()) { readTimeout = make_shared<int>(boost::any_cast<int>(m["readTimeout"])); } if (m.find("connectTimeout") != m.end()) { connectTimeout = make_shared<int>(boost::any_cast<int>(m["connectTimeout"])); } if (m.find("localAddr") != m.end()) { localAddr = make_shared<string>(boost::any_cast<string>(m["localAddr"])); } if (m.find("httpProxy") != m.end()) { httpProxy = make_shared<string>(boost::any_cast<string>(m["httpProxy"])); } if (m.find("httpsProxy") != m.end()) { httpsProxy = make_shared<string>(boost::any_cast<string>(m["httpsProxy"])); } if (m.find("noProxy") != m.end()) { noProxy = make_shared<string>(boost::any_cast<string>(m["noProxy"])); } if (m.find("maxIdleConns") != m.end()) { maxIdleConns = make_shared<int>(boost::any_cast<int>(m["maxIdleConns"])); } if (m.find("socks5Proxy") != m.end()) { socks5Proxy = make_shared<string>(boost::any_cast<string>(m["socks5Proxy"])); } if (m.find("socks5NetWork") != m.end()) { socks5NetWork = make_shared<string>(boost::any_cast<string>(m["socks5NetWork"])); } if (m.find("uploadLimitSpeed") != m.end()) { uploadLimitSpeed = make_shared<int>(boost::any_cast<int>(m["uploadLimitSpeed"])); } if (m.find("listener") != m.end()) { listener = make_shared<boost::any>(boost::any_cast<boost::any>(m["listener"])); } } shared_ptr<bool> autoretry{}; shared_ptr<bool> ignoreSSL{}; shared_ptr<int> maxAttempts{}; shared_ptr<string> backoffPolicy{}; shared_ptr<int> backoffPeriod{}; shared_ptr<int> readTimeout{}; shared_ptr<int> connectTimeout{}; shared_ptr<string> localAddr{}; shared_ptr<string> httpProxy{}; shared_ptr<string> httpsProxy{}; shared_ptr<string> noProxy{}; shared_ptr<int> maxIdleConns{}; shared_ptr<string> socks5Proxy{}; shared_ptr<string> socks5NetWork{}; shared_ptr<int> uploadLimitSpeed{}; shared_ptr<boost::any> listener{}; ~RuntimeOptions() = default; }; ///////////////////////////// class VerifyStream: public Darabonba::Stream{ public: VerifyStream()= default; VerifyStream(shared_ptr<Darabonba::Stream> stream, shared_ptr<map<string, string>> ctx) { _stream = stream; _ctx = ctx; } bool empty() override; string read() override; private: shared_ptr<Darabonba::Stream> _stream; shared_ptr<map<string, string>> _ctx; }; ///////////////////////////// class Client { public: static map<string, boost::any> getErrMessage(shared_ptr<string> msg); static map<string, string> toMeta(const shared_ptr<map<string, string>>& val, const shared_ptr<string>& prefix); static map<string, string> parseMeta(const shared_ptr<map<string, string>>& val, const shared_ptr<string>& prefix); static string getContentType(const shared_ptr<string>& fileName); static string getContentMD5(const shared_ptr<string>& body, const shared_ptr<bool>& isEnableMD5); static string encode(const shared_ptr<string>& val, const shared_ptr<string>& encodeType); static string getHost(const shared_ptr<string>& bucketName, shared_ptr<string> regionId, shared_ptr<string> endpoint, const shared_ptr<string>& hostModel); static shared_ptr<VerifyStream> inject(const shared_ptr<Darabonba::Stream>& body, const shared_ptr<map<string, string>>& res); static string getSignature(const shared_ptr<Darabonba::Request>& request, const shared_ptr<string>& bucketName, const shared_ptr<string>& accessKeyId, const shared_ptr<string>& accessKeySecret, const shared_ptr<string>& signatureVersion, const shared_ptr<vector<string>>& addtionalHeaders); static string decode(const shared_ptr<string>& val, shared_ptr<string> decodeType); Client() {}; ~Client() {}; }; } // namespace Alibabacloud_OSSUtil #endif