CloudauthClient.h 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. /*
  2. * Copyright 2009-2017 Alibaba Cloud All rights reserved.
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. #ifndef ALIBABACLOUD_CLOUDAUTH_CLOUDAUTHCLIENT_H_
  17. #define ALIBABACLOUD_CLOUDAUTH_CLOUDAUTHCLIENT_H_
  18. #include <future>
  19. #include <alibabacloud/core/AsyncCallerContext.h>
  20. #include <alibabacloud/core/EndpointProvider.h>
  21. #include <alibabacloud/core/RpcServiceClient.h>
  22. #include "CloudauthExport.h"
  23. #include "model/CompareFaceVerifyRequest.h"
  24. #include "model/CompareFaceVerifyResult.h"
  25. #include "model/CompareFacesRequest.h"
  26. #include "model/CompareFacesResult.h"
  27. #include "model/ContrastFaceVerifyRequest.h"
  28. #include "model/ContrastFaceVerifyResult.h"
  29. #include "model/CreateAuthKeyRequest.h"
  30. #include "model/CreateAuthKeyResult.h"
  31. #include "model/CreateVerifySettingRequest.h"
  32. #include "model/CreateVerifySettingResult.h"
  33. #include "model/DescribeDeviceInfoRequest.h"
  34. #include "model/DescribeDeviceInfoResult.h"
  35. #include "model/DescribeFaceVerifyRequest.h"
  36. #include "model/DescribeFaceVerifyResult.h"
  37. #include "model/DescribeOssUploadTokenRequest.h"
  38. #include "model/DescribeOssUploadTokenResult.h"
  39. #include "model/DescribeVerifyResultRequest.h"
  40. #include "model/DescribeVerifyResultResult.h"
  41. #include "model/DescribeVerifySDKRequest.h"
  42. #include "model/DescribeVerifySDKResult.h"
  43. #include "model/DescribeVerifyTokenRequest.h"
  44. #include "model/DescribeVerifyTokenResult.h"
  45. #include "model/DetectFaceAttributesRequest.h"
  46. #include "model/DetectFaceAttributesResult.h"
  47. #include "model/InitFaceVerifyRequest.h"
  48. #include "model/InitFaceVerifyResult.h"
  49. #include "model/LivenessFaceVerifyRequest.h"
  50. #include "model/LivenessFaceVerifyResult.h"
  51. #include "model/ModifyDeviceInfoRequest.h"
  52. #include "model/ModifyDeviceInfoResult.h"
  53. #include "model/VerifyMaterialRequest.h"
  54. #include "model/VerifyMaterialResult.h"
  55. namespace AlibabaCloud
  56. {
  57. namespace Cloudauth
  58. {
  59. class ALIBABACLOUD_CLOUDAUTH_EXPORT CloudauthClient : public RpcServiceClient
  60. {
  61. public:
  62. typedef Outcome<Error, Model::CompareFaceVerifyResult> CompareFaceVerifyOutcome;
  63. typedef std::future<CompareFaceVerifyOutcome> CompareFaceVerifyOutcomeCallable;
  64. typedef std::function<void(const CloudauthClient*, const Model::CompareFaceVerifyRequest&, const CompareFaceVerifyOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CompareFaceVerifyAsyncHandler;
  65. typedef Outcome<Error, Model::CompareFacesResult> CompareFacesOutcome;
  66. typedef std::future<CompareFacesOutcome> CompareFacesOutcomeCallable;
  67. typedef std::function<void(const CloudauthClient*, const Model::CompareFacesRequest&, const CompareFacesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CompareFacesAsyncHandler;
  68. typedef Outcome<Error, Model::ContrastFaceVerifyResult> ContrastFaceVerifyOutcome;
  69. typedef std::future<ContrastFaceVerifyOutcome> ContrastFaceVerifyOutcomeCallable;
  70. typedef std::function<void(const CloudauthClient*, const Model::ContrastFaceVerifyRequest&, const ContrastFaceVerifyOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ContrastFaceVerifyAsyncHandler;
  71. typedef Outcome<Error, Model::CreateAuthKeyResult> CreateAuthKeyOutcome;
  72. typedef std::future<CreateAuthKeyOutcome> CreateAuthKeyOutcomeCallable;
  73. typedef std::function<void(const CloudauthClient*, const Model::CreateAuthKeyRequest&, const CreateAuthKeyOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateAuthKeyAsyncHandler;
  74. typedef Outcome<Error, Model::CreateVerifySettingResult> CreateVerifySettingOutcome;
  75. typedef std::future<CreateVerifySettingOutcome> CreateVerifySettingOutcomeCallable;
  76. typedef std::function<void(const CloudauthClient*, const Model::CreateVerifySettingRequest&, const CreateVerifySettingOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateVerifySettingAsyncHandler;
  77. typedef Outcome<Error, Model::DescribeDeviceInfoResult> DescribeDeviceInfoOutcome;
  78. typedef std::future<DescribeDeviceInfoOutcome> DescribeDeviceInfoOutcomeCallable;
  79. typedef std::function<void(const CloudauthClient*, const Model::DescribeDeviceInfoRequest&, const DescribeDeviceInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeDeviceInfoAsyncHandler;
  80. typedef Outcome<Error, Model::DescribeFaceVerifyResult> DescribeFaceVerifyOutcome;
  81. typedef std::future<DescribeFaceVerifyOutcome> DescribeFaceVerifyOutcomeCallable;
  82. typedef std::function<void(const CloudauthClient*, const Model::DescribeFaceVerifyRequest&, const DescribeFaceVerifyOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeFaceVerifyAsyncHandler;
  83. typedef Outcome<Error, Model::DescribeOssUploadTokenResult> DescribeOssUploadTokenOutcome;
  84. typedef std::future<DescribeOssUploadTokenOutcome> DescribeOssUploadTokenOutcomeCallable;
  85. typedef std::function<void(const CloudauthClient*, const Model::DescribeOssUploadTokenRequest&, const DescribeOssUploadTokenOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeOssUploadTokenAsyncHandler;
  86. typedef Outcome<Error, Model::DescribeVerifyResultResult> DescribeVerifyResultOutcome;
  87. typedef std::future<DescribeVerifyResultOutcome> DescribeVerifyResultOutcomeCallable;
  88. typedef std::function<void(const CloudauthClient*, const Model::DescribeVerifyResultRequest&, const DescribeVerifyResultOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeVerifyResultAsyncHandler;
  89. typedef Outcome<Error, Model::DescribeVerifySDKResult> DescribeVerifySDKOutcome;
  90. typedef std::future<DescribeVerifySDKOutcome> DescribeVerifySDKOutcomeCallable;
  91. typedef std::function<void(const CloudauthClient*, const Model::DescribeVerifySDKRequest&, const DescribeVerifySDKOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeVerifySDKAsyncHandler;
  92. typedef Outcome<Error, Model::DescribeVerifyTokenResult> DescribeVerifyTokenOutcome;
  93. typedef std::future<DescribeVerifyTokenOutcome> DescribeVerifyTokenOutcomeCallable;
  94. typedef std::function<void(const CloudauthClient*, const Model::DescribeVerifyTokenRequest&, const DescribeVerifyTokenOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeVerifyTokenAsyncHandler;
  95. typedef Outcome<Error, Model::DetectFaceAttributesResult> DetectFaceAttributesOutcome;
  96. typedef std::future<DetectFaceAttributesOutcome> DetectFaceAttributesOutcomeCallable;
  97. typedef std::function<void(const CloudauthClient*, const Model::DetectFaceAttributesRequest&, const DetectFaceAttributesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DetectFaceAttributesAsyncHandler;
  98. typedef Outcome<Error, Model::InitFaceVerifyResult> InitFaceVerifyOutcome;
  99. typedef std::future<InitFaceVerifyOutcome> InitFaceVerifyOutcomeCallable;
  100. typedef std::function<void(const CloudauthClient*, const Model::InitFaceVerifyRequest&, const InitFaceVerifyOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> InitFaceVerifyAsyncHandler;
  101. typedef Outcome<Error, Model::LivenessFaceVerifyResult> LivenessFaceVerifyOutcome;
  102. typedef std::future<LivenessFaceVerifyOutcome> LivenessFaceVerifyOutcomeCallable;
  103. typedef std::function<void(const CloudauthClient*, const Model::LivenessFaceVerifyRequest&, const LivenessFaceVerifyOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> LivenessFaceVerifyAsyncHandler;
  104. typedef Outcome<Error, Model::ModifyDeviceInfoResult> ModifyDeviceInfoOutcome;
  105. typedef std::future<ModifyDeviceInfoOutcome> ModifyDeviceInfoOutcomeCallable;
  106. typedef std::function<void(const CloudauthClient*, const Model::ModifyDeviceInfoRequest&, const ModifyDeviceInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyDeviceInfoAsyncHandler;
  107. typedef Outcome<Error, Model::VerifyMaterialResult> VerifyMaterialOutcome;
  108. typedef std::future<VerifyMaterialOutcome> VerifyMaterialOutcomeCallable;
  109. typedef std::function<void(const CloudauthClient*, const Model::VerifyMaterialRequest&, const VerifyMaterialOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> VerifyMaterialAsyncHandler;
  110. CloudauthClient(const Credentials &credentials, const ClientConfiguration &configuration);
  111. CloudauthClient(const std::shared_ptr<CredentialsProvider> &credentialsProvider, const ClientConfiguration &configuration);
  112. CloudauthClient(const std::string &accessKeyId, const std::string &accessKeySecret, const ClientConfiguration &configuration);
  113. ~CloudauthClient();
  114. CompareFaceVerifyOutcome compareFaceVerify(const Model::CompareFaceVerifyRequest &request)const;
  115. void compareFaceVerifyAsync(const Model::CompareFaceVerifyRequest& request, const CompareFaceVerifyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  116. CompareFaceVerifyOutcomeCallable compareFaceVerifyCallable(const Model::CompareFaceVerifyRequest& request) const;
  117. CompareFacesOutcome compareFaces(const Model::CompareFacesRequest &request)const;
  118. void compareFacesAsync(const Model::CompareFacesRequest& request, const CompareFacesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  119. CompareFacesOutcomeCallable compareFacesCallable(const Model::CompareFacesRequest& request) const;
  120. ContrastFaceVerifyOutcome contrastFaceVerify(const Model::ContrastFaceVerifyRequest &request)const;
  121. void contrastFaceVerifyAsync(const Model::ContrastFaceVerifyRequest& request, const ContrastFaceVerifyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  122. ContrastFaceVerifyOutcomeCallable contrastFaceVerifyCallable(const Model::ContrastFaceVerifyRequest& request) const;
  123. CreateAuthKeyOutcome createAuthKey(const Model::CreateAuthKeyRequest &request)const;
  124. void createAuthKeyAsync(const Model::CreateAuthKeyRequest& request, const CreateAuthKeyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  125. CreateAuthKeyOutcomeCallable createAuthKeyCallable(const Model::CreateAuthKeyRequest& request) const;
  126. CreateVerifySettingOutcome createVerifySetting(const Model::CreateVerifySettingRequest &request)const;
  127. void createVerifySettingAsync(const Model::CreateVerifySettingRequest& request, const CreateVerifySettingAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  128. CreateVerifySettingOutcomeCallable createVerifySettingCallable(const Model::CreateVerifySettingRequest& request) const;
  129. DescribeDeviceInfoOutcome describeDeviceInfo(const Model::DescribeDeviceInfoRequest &request)const;
  130. void describeDeviceInfoAsync(const Model::DescribeDeviceInfoRequest& request, const DescribeDeviceInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  131. DescribeDeviceInfoOutcomeCallable describeDeviceInfoCallable(const Model::DescribeDeviceInfoRequest& request) const;
  132. DescribeFaceVerifyOutcome describeFaceVerify(const Model::DescribeFaceVerifyRequest &request)const;
  133. void describeFaceVerifyAsync(const Model::DescribeFaceVerifyRequest& request, const DescribeFaceVerifyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  134. DescribeFaceVerifyOutcomeCallable describeFaceVerifyCallable(const Model::DescribeFaceVerifyRequest& request) const;
  135. DescribeOssUploadTokenOutcome describeOssUploadToken(const Model::DescribeOssUploadTokenRequest &request)const;
  136. void describeOssUploadTokenAsync(const Model::DescribeOssUploadTokenRequest& request, const DescribeOssUploadTokenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  137. DescribeOssUploadTokenOutcomeCallable describeOssUploadTokenCallable(const Model::DescribeOssUploadTokenRequest& request) const;
  138. DescribeVerifyResultOutcome describeVerifyResult(const Model::DescribeVerifyResultRequest &request)const;
  139. void describeVerifyResultAsync(const Model::DescribeVerifyResultRequest& request, const DescribeVerifyResultAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  140. DescribeVerifyResultOutcomeCallable describeVerifyResultCallable(const Model::DescribeVerifyResultRequest& request) const;
  141. DescribeVerifySDKOutcome describeVerifySDK(const Model::DescribeVerifySDKRequest &request)const;
  142. void describeVerifySDKAsync(const Model::DescribeVerifySDKRequest& request, const DescribeVerifySDKAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  143. DescribeVerifySDKOutcomeCallable describeVerifySDKCallable(const Model::DescribeVerifySDKRequest& request) const;
  144. DescribeVerifyTokenOutcome describeVerifyToken(const Model::DescribeVerifyTokenRequest &request)const;
  145. void describeVerifyTokenAsync(const Model::DescribeVerifyTokenRequest& request, const DescribeVerifyTokenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  146. DescribeVerifyTokenOutcomeCallable describeVerifyTokenCallable(const Model::DescribeVerifyTokenRequest& request) const;
  147. DetectFaceAttributesOutcome detectFaceAttributes(const Model::DetectFaceAttributesRequest &request)const;
  148. void detectFaceAttributesAsync(const Model::DetectFaceAttributesRequest& request, const DetectFaceAttributesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  149. DetectFaceAttributesOutcomeCallable detectFaceAttributesCallable(const Model::DetectFaceAttributesRequest& request) const;
  150. InitFaceVerifyOutcome initFaceVerify(const Model::InitFaceVerifyRequest &request)const;
  151. void initFaceVerifyAsync(const Model::InitFaceVerifyRequest& request, const InitFaceVerifyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  152. InitFaceVerifyOutcomeCallable initFaceVerifyCallable(const Model::InitFaceVerifyRequest& request) const;
  153. LivenessFaceVerifyOutcome livenessFaceVerify(const Model::LivenessFaceVerifyRequest &request)const;
  154. void livenessFaceVerifyAsync(const Model::LivenessFaceVerifyRequest& request, const LivenessFaceVerifyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  155. LivenessFaceVerifyOutcomeCallable livenessFaceVerifyCallable(const Model::LivenessFaceVerifyRequest& request) const;
  156. ModifyDeviceInfoOutcome modifyDeviceInfo(const Model::ModifyDeviceInfoRequest &request)const;
  157. void modifyDeviceInfoAsync(const Model::ModifyDeviceInfoRequest& request, const ModifyDeviceInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  158. ModifyDeviceInfoOutcomeCallable modifyDeviceInfoCallable(const Model::ModifyDeviceInfoRequest& request) const;
  159. VerifyMaterialOutcome verifyMaterial(const Model::VerifyMaterialRequest &request)const;
  160. void verifyMaterialAsync(const Model::VerifyMaterialRequest& request, const VerifyMaterialAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  161. VerifyMaterialOutcomeCallable verifyMaterialCallable(const Model::VerifyMaterialRequest& request) const;
  162. private:
  163. std::shared_ptr<EndpointProvider> endpointProvider_;
  164. };
  165. }
  166. }
  167. #endif // !ALIBABACLOUD_CLOUDAUTH_CLOUDAUTHCLIENT_H_