timeout support when create client or make request
This commit is contained in:
@@ -18,8 +18,15 @@
|
||||
#define CORE_INCLUDE_ALIBABACLOUD_CORE_ALIBABACLOUD_H_
|
||||
|
||||
#include "CoreExport.h"
|
||||
#include <limits>
|
||||
|
||||
namespace AlibabaCloud {
|
||||
|
||||
const long kInvalidTimeout = (std::numeric_limits<long>::min)();
|
||||
|
||||
const long kDefaultConnectTimeout = 5000;
|
||||
const long kDefaultReadTimeout = 10000;
|
||||
|
||||
ALIBABACLOUD_CORE_EXPORT void InitializeSdk();
|
||||
ALIBABACLOUD_CORE_EXPORT bool IsSdkInitialized();
|
||||
ALIBABACLOUD_CORE_EXPORT void ShutdownSdk();
|
||||
|
||||
@@ -38,10 +38,17 @@ class ALIBABACLOUD_CORE_EXPORT ClientConfiguration {
|
||||
void setProxy(const NetworkProxy &proxy);
|
||||
void setRegionId(const std::string ®ionId);
|
||||
|
||||
long connectTimeout() const;
|
||||
long readTimeout() const;
|
||||
void setConnectTimeout(const long connectTimeout);
|
||||
void setReadTimeout(const long readTimeout);
|
||||
|
||||
private:
|
||||
std::string endpoint_;
|
||||
NetworkProxy proxy_;
|
||||
std::string regionId_;
|
||||
long connectTimeout_;
|
||||
long readTimeout_;
|
||||
};
|
||||
} // namespace AlibabaCloud
|
||||
|
||||
|
||||
@@ -42,10 +42,16 @@ class ALIBABACLOUD_CORE_EXPORT HttpRequest : public HttpMessage {
|
||||
void setMethod(Method method);
|
||||
void setUrl(const Url &url);
|
||||
Url url()const;
|
||||
long connectTimeout() const;
|
||||
long readTimeout() const;
|
||||
void setConnectTimeout(const long connectTimeout);
|
||||
void setReadTimeout(const long readTimeout);
|
||||
|
||||
private:
|
||||
Method method_;
|
||||
Url url_;
|
||||
long connectTimeout_;
|
||||
long readTimeout_;
|
||||
};
|
||||
} // namespace AlibabaCloud
|
||||
#endif // CORE_INCLUDE_ALIBABACLOUD_CORE_HTTPREQUEST_H_
|
||||
|
||||
@@ -39,6 +39,10 @@ class ALIBABACLOUD_CORE_EXPORT ServiceRequest {
|
||||
std::string resourcePath() const;
|
||||
std::string version() const;
|
||||
std::string scheme() const;
|
||||
long connectTimeout() const;
|
||||
long readTimeout() const;
|
||||
void setConnectTimeout(const long connectTimeout);
|
||||
void setReadTimeout(const long readTimeout);
|
||||
|
||||
protected:
|
||||
ServiceRequest(const std::string &product, const std::string &version);
|
||||
@@ -68,6 +72,8 @@ class ALIBABACLOUD_CORE_EXPORT ServiceRequest {
|
||||
std::string resourcePath_;
|
||||
std::string version_;
|
||||
std::string scheme_;
|
||||
long connectTimeout_;
|
||||
long readTimeout_;
|
||||
};
|
||||
} // namespace AlibabaCloud
|
||||
|
||||
|
||||
@@ -26,14 +26,13 @@ class ALIBABACLOUD_CORE_EXPORT ServiceResult {
|
||||
public:
|
||||
ServiceResult();
|
||||
virtual ~ServiceResult();
|
||||
|
||||
std::string requestId()const;
|
||||
|
||||
protected:
|
||||
void setRequestId(const std::string &requestId);
|
||||
|
||||
private:
|
||||
std::string requestId_;
|
||||
std::string requestId_;
|
||||
};
|
||||
} // namespace AlibabaCloud
|
||||
|
||||
|
||||
Reference in New Issue
Block a user