Add CheckCertificate Api.

This commit is contained in:
sdk-team
2021-07-09 10:26:45 +00:00
parent 0dc704dbaa
commit de7176c25c
17 changed files with 396 additions and 1 deletions

View File

@@ -195,6 +195,42 @@ PushClient::CancelPushOutcomeCallable PushClient::cancelPushCallable(const Cance
return task->get_future();
}
PushClient::CheckCertificateOutcome PushClient::checkCertificate(const CheckCertificateRequest &request) const
{
auto endpointOutcome = endpointProvider_->getEndpoint();
if (!endpointOutcome.isSuccess())
return CheckCertificateOutcome(endpointOutcome.error());
auto outcome = makeRequest(endpointOutcome.result(), request);
if (outcome.isSuccess())
return CheckCertificateOutcome(CheckCertificateResult(outcome.result()));
else
return CheckCertificateOutcome(outcome.error());
}
void PushClient::checkCertificateAsync(const CheckCertificateRequest& request, const CheckCertificateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
{
auto fn = [this, request, handler, context]()
{
handler(this, request, checkCertificate(request), context);
};
asyncExecute(new Runnable(fn));
}
PushClient::CheckCertificateOutcomeCallable PushClient::checkCertificateCallable(const CheckCertificateRequest &request) const
{
auto task = std::make_shared<std::packaged_task<CheckCertificateOutcome()>>(
[this, request]()
{
return this->checkCertificate(request);
});
asyncExecute(new Runnable([task]() { (*task)(); }));
return task->get_future();
}
PushClient::CheckDeviceOutcome PushClient::checkDevice(const CheckDeviceRequest &request) const
{
auto endpointOutcome = endpointProvider_->getEndpoint();

View File

@@ -0,0 +1,51 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <alibabacloud/push/model/CheckCertificateRequest.h>
using AlibabaCloud::Push::Model::CheckCertificateRequest;
CheckCertificateRequest::CheckCertificateRequest() :
RpcServiceRequest("push", "2016-08-01", "CheckCertificate")
{
setMethod(HttpRequest::Method::Post);
}
CheckCertificateRequest::~CheckCertificateRequest()
{}
std::string CheckCertificateRequest::getAccessKeyId()const
{
return accessKeyId_;
}
void CheckCertificateRequest::setAccessKeyId(const std::string& accessKeyId)
{
accessKeyId_ = accessKeyId;
setParameter("AccessKeyId", accessKeyId);
}
long CheckCertificateRequest::getAppKey()const
{
return appKey_;
}
void CheckCertificateRequest::setAppKey(long appKey)
{
appKey_ = appKey;
setParameter("AppKey", std::to_string(appKey));
}

View File

@@ -0,0 +1,78 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <alibabacloud/push/model/CheckCertificateResult.h>
#include <json/json.h>
using namespace AlibabaCloud::Push;
using namespace AlibabaCloud::Push::Model;
CheckCertificateResult::CheckCertificateResult() :
ServiceResult()
{}
CheckCertificateResult::CheckCertificateResult(const std::string &payload) :
ServiceResult()
{
parse(payload);
}
CheckCertificateResult::~CheckCertificateResult()
{}
void CheckCertificateResult::parse(const std::string &payload)
{
Json::Reader reader;
Json::Value value;
reader.parse(payload, value);
setRequestId(value["RequestId"].asString());
auto productionCertInfoNode = value["ProductionCertInfo"];
if(!productionCertInfoNode["ExipreTime"].isNull())
productionCertInfo_.exipreTime = std::stol(productionCertInfoNode["ExipreTime"].asString());
if(!productionCertInfoNode["Status"].isNull())
productionCertInfo_.status = productionCertInfoNode["Status"].asString();
auto developmentCertInfoNode = value["DevelopmentCertInfo"];
if(!developmentCertInfoNode["ExipreTime"].isNull())
developmentCertInfo_.exipreTime = std::stol(developmentCertInfoNode["ExipreTime"].asString());
if(!developmentCertInfoNode["Status"].isNull())
developmentCertInfo_.status = developmentCertInfoNode["Status"].asString();
if(!value["Android"].isNull())
android_ = value["Android"].asString() == "true";
if(!value["IOS"].isNull())
iOS_ = value["IOS"].asString() == "true";
}
CheckCertificateResult::DevelopmentCertInfo CheckCertificateResult::getDevelopmentCertInfo()const
{
return developmentCertInfo_;
}
bool CheckCertificateResult::getIOS()const
{
return iOS_;
}
CheckCertificateResult::ProductionCertInfo CheckCertificateResult::getProductionCertInfo()const
{
return productionCertInfo_;
}
bool CheckCertificateResult::getAndroid()const
{
return android_;
}

View File

@@ -52,6 +52,7 @@ void MassPushRequest::setPushTask(const std::vector<PushTask>& pushTask)
setParameter(pushTaskObjStr + ".AndroidNotificationBarType", std::to_string(pushTaskObj.androidNotificationBarType));
setParameter(pushTaskObjStr + ".AndroidExtParameters", pushTaskObj.androidExtParameters);
setParameter(pushTaskObjStr + ".IOSBadge", std::to_string(pushTaskObj.iOSBadge));
setParameter(pushTaskObjStr + ".AndroidBigBody", pushTaskObj.androidBigBody);
setParameter(pushTaskObjStr + ".IOSBadgeAutoIncrement", pushTaskObj.iOSBadgeAutoIncrement ? "true" : "false");
setParameter(pushTaskObjStr + ".AndroidOpenType", pushTaskObj.androidOpenType);
setParameter(pushTaskObjStr + ".Title", pushTaskObj.title);
@@ -62,6 +63,7 @@ void MassPushRequest::setPushTask(const std::vector<PushTask>& pushTask)
setParameter(pushTaskObjStr + ".AndroidNotificationHuaweiChannel", pushTaskObj.androidNotificationHuaweiChannel);
setParameter(pushTaskObjStr + ".AndroidPopupActivity", pushTaskObj.androidPopupActivity);
setParameter(pushTaskObjStr + ".IOSRemindBody", pushTaskObj.iOSRemindBody);
setParameter(pushTaskObjStr + ".AndroidRenderStyle", pushTaskObj.androidRenderStyle);
setParameter(pushTaskObjStr + ".IOSExtParameters", pushTaskObj.iOSExtParameters);
setParameter(pushTaskObjStr + ".AndroidNotifyType", pushTaskObj.androidNotifyType);
setParameter(pushTaskObjStr + ".AndroidPopupTitle", pushTaskObj.androidPopupTitle);
@@ -78,12 +80,14 @@ void MassPushRequest::setPushTask(const std::vector<PushTask>& pushTask)
setParameter(pushTaskObjStr + ".IOSSilentNotification", pushTaskObj.iOSSilentNotification ? "true" : "false");
setParameter(pushTaskObjStr + ".JobKey", pushTaskObj.jobKey);
setParameter(pushTaskObjStr + ".Target", pushTaskObj.target);
setParameter(pushTaskObjStr + ".AndroidBigTitle", pushTaskObj.androidBigTitle);
setParameter(pushTaskObjStr + ".AndroidOpenUrl", pushTaskObj.androidOpenUrl);
setParameter(pushTaskObjStr + ".AndroidNotificationChannel", pushTaskObj.androidNotificationChannel);
setParameter(pushTaskObjStr + ".AndroidRemind", pushTaskObj.androidRemind ? "true" : "false");
setParameter(pushTaskObjStr + ".AndroidActivity", pushTaskObj.androidActivity);
setParameter(pushTaskObjStr + ".AndroidXiaoMiNotifyBody", pushTaskObj.androidXiaoMiNotifyBody);
setParameter(pushTaskObjStr + ".IOSSubtitle", pushTaskObj.iOSSubtitle);
setParameter(pushTaskObjStr + ".AndroidXiaomiBigPictureUrl", pushTaskObj.androidXiaomiBigPictureUrl);
setParameter(pushTaskObjStr + ".IOSRemind", pushTaskObj.iOSRemind ? "true" : "false");
setParameter(pushTaskObjStr + ".AndroidNotificationNotifyId", std::to_string(pushTaskObj.androidNotificationNotifyId));
setParameter(pushTaskObjStr + ".TargetValue", pushTaskObj.targetValue);

View File

@@ -302,6 +302,17 @@ void PushRequest::setIOSSubtitle(const std::string& iOSSubtitle)
setParameter("IOSSubtitle", iOSSubtitle);
}
std::string PushRequest::getAndroidXiaomiBigPictureUrl()const
{
return androidXiaomiBigPictureUrl_;
}
void PushRequest::setAndroidXiaomiBigPictureUrl(const std::string& androidXiaomiBigPictureUrl)
{
androidXiaomiBigPictureUrl_ = androidXiaomiBigPictureUrl;
setParameter("AndroidXiaomiBigPictureUrl", androidXiaomiBigPictureUrl);
}
bool PushRequest::getIOSRemind()const
{
return iOSRemind_;
@@ -368,6 +379,17 @@ void PushRequest::setIOSBadge(int iOSBadge)
setParameter("IOSBadge", std::to_string(iOSBadge));
}
std::string PushRequest::getAndroidBigBody()const
{
return androidBigBody_;
}
void PushRequest::setAndroidBigBody(const std::string& androidBigBody)
{
androidBigBody_ = androidBigBody;
setParameter("AndroidBigBody", androidBigBody);
}
bool PushRequest::getIOSBadgeAutoIncrement()const
{
return iOSBadgeAutoIncrement_;
@@ -423,6 +445,17 @@ void PushRequest::setSmsDelaySecs(int smsDelaySecs)
setParameter("SmsDelaySecs", std::to_string(smsDelaySecs));
}
int PushRequest::getAndroidRenderStyle()const
{
return androidRenderStyle_;
}
void PushRequest::setAndroidRenderStyle(int androidRenderStyle)
{
androidRenderStyle_ = androidRenderStyle;
setParameter("AndroidRenderStyle", std::to_string(androidRenderStyle));
}
std::string PushRequest::getIOSExtParameters()const
{
return iOSExtParameters_;
@@ -478,6 +511,17 @@ void PushRequest::setTarget(const std::string& target)
setParameter("Target", target);
}
std::string PushRequest::getAndroidBigTitle()const
{
return androidBigTitle_;
}
void PushRequest::setAndroidBigTitle(const std::string& androidBigTitle)
{
androidBigTitle_ = androidBigTitle;
setParameter("AndroidBigTitle", androidBigTitle);
}
std::string PushRequest::getAndroidNotificationChannel()const
{
return androidNotificationChannel_;

View File

@@ -126,6 +126,17 @@ void QueryPushRecordsRequest::setAppKey(long appKey)
setParameter("AppKey", std::to_string(appKey));
}
int QueryPushRecordsRequest::getPage()const
{
return page_;
}
void QueryPushRecordsRequest::setPage(int page)
{
page_ = page;
setParameter("Page", std::to_string(page));
}
std::string QueryPushRecordsRequest::getPushType()const
{
return pushType_;

View File

@@ -69,6 +69,10 @@ void QueryPushRecordsResult::parse(const std::string &payload)
nextToken_ = value["NextToken"].asString();
if(!value["PageSize"].isNull())
pageSize_ = std::stoi(value["PageSize"].asString());
if(!value["Page"].isNull())
page_ = std::stoi(value["Page"].asString());
if(!value["Total"].isNull())
total_ = std::stoi(value["Total"].asString());
}
@@ -87,3 +91,13 @@ int QueryPushRecordsResult::getPageSize()const
return pageSize_;
}
int QueryPushRecordsResult::getTotal()const
{
return total_;
}
int QueryPushRecordsResult::getPage()const
{
return page_;
}