diff --git a/core/include/alibabacloud/core/ServiceRequest.h b/core/include/alibabacloud/core/ServiceRequest.h index 310e62dda..b779c85d6 100644 --- a/core/include/alibabacloud/core/ServiceRequest.h +++ b/core/include/alibabacloud/core/ServiceRequest.h @@ -54,10 +54,16 @@ class ALIBABACLOUD_CORE_EXPORT ServiceRequest { void addParameter(const ParameterNameType &name, const ParameterValueType &value); ParameterValueType parameter(const ParameterNameType &name) const; + ParameterValueType coreParameter(const ParameterNameType &name) const; void removeParameter(const ParameterNameType &name); void setContent(const char *data, size_t size); void setParameter(const ParameterNameType &name, const ParameterValueType &value); + + void setCoreParameter(const ParameterNameType &name, + const ParameterValueType &value); + + void setParameters(const ParameterCollection ¶ms); void setResourcePath(const std::string &path); void setProduct(const std::string &product); diff --git a/core/src/ServiceRequest.cc b/core/src/ServiceRequest.cc index a6326957e..f3f859114 100644 --- a/core/src/ServiceRequest.cc +++ b/core/src/ServiceRequest.cc @@ -110,6 +110,12 @@ ServiceRequest::ParameterValueType ServiceRequest::parameter( return it->second; } + +ServiceRequest::ParameterValueType ServiceRequest::coreParameter( + const ParameterNameType &name)const { + return parameter(name); +} + ServiceRequest::ParameterCollection ServiceRequest::parameters() const { return params_; } @@ -123,6 +129,12 @@ void ServiceRequest::setParameter(const ParameterNameType &name, params_[name] = value; } +void ServiceRequest::setCoreParameter(const ParameterNameType &name, + const ParameterValueType &value) { + setParameter(name, value); +} + + void ServiceRequest::setParameters(const ParameterCollection & params) { params_ = params; } diff --git a/test/core/servicerequest_ut.cc b/test/core/servicerequest_ut.cc index 0cbcdcc61..85530dcf1 100644 --- a/test/core/servicerequest_ut.cc +++ b/test/core/servicerequest_ut.cc @@ -31,7 +31,8 @@ namespace { using ServiceRequest::setResourcePath; using ServiceRequest::setProduct; using ServiceRequest::setVersion; - + using ServiceRequest::setCoreParameter; + using ServiceRequest::coreParameter; }; TEST(ServiceRequest, basic) { @@ -54,8 +55,13 @@ namespace { sr1.removeParameter("k1"); EXPECT_TRUE(sr1.parameters().size() == 1); + sr1.setCoreParameter("kcore1", "vcore1"); + EXPECT_TRUE(sr1.parameter("kcore1") == "vcore1"); + EXPECT_TRUE(sr1.coreParameter("kcore1") == "vcore1"); + sr1.setParameter("ka", "va"); EXPECT_TRUE(sr1.parameter("ka") == "va"); + EXPECT_TRUE(sr1.coreParameter("ka") == "va"); sr1.setContent("123456", 6); EXPECT_TRUE(sr1.contentSize() == 6);