1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 8 #include <aws/core/client/AWSError.h> 9 #include <aws/core/client/CoreErrors.h> 10 #include <aws/macie/Macie_EXPORTS.h> 11 12 namespace Aws 13 { 14 namespace Macie 15 { 16 enum class MacieErrors 17 { 18 //From Core// 19 ////////////////////////////////////////////////////////////////////////////////////////// 20 INCOMPLETE_SIGNATURE = 0, 21 INTERNAL_FAILURE = 1, 22 INVALID_ACTION = 2, 23 INVALID_CLIENT_TOKEN_ID = 3, 24 INVALID_PARAMETER_COMBINATION = 4, 25 INVALID_QUERY_PARAMETER = 5, 26 INVALID_PARAMETER_VALUE = 6, 27 MISSING_ACTION = 7, // SDK should never allow 28 MISSING_AUTHENTICATION_TOKEN = 8, // SDK should never allow 29 MISSING_PARAMETER = 9, // SDK should never allow 30 OPT_IN_REQUIRED = 10, 31 REQUEST_EXPIRED = 11, 32 SERVICE_UNAVAILABLE = 12, 33 THROTTLING = 13, 34 VALIDATION = 14, 35 ACCESS_DENIED = 15, 36 RESOURCE_NOT_FOUND = 16, 37 UNRECOGNIZED_CLIENT = 17, 38 MALFORMED_QUERY_STRING = 18, 39 SLOW_DOWN = 19, 40 REQUEST_TIME_TOO_SKEWED = 20, 41 INVALID_SIGNATURE = 21, 42 SIGNATURE_DOES_NOT_MATCH = 22, 43 INVALID_ACCESS_KEY_ID = 23, 44 REQUEST_TIMEOUT = 24, 45 NETWORK_CONNECTION = 99, 46 47 UNKNOWN = 100, 48 /////////////////////////////////////////////////////////////////////////////////////////// 49 50 INTERNAL= static_cast<int>(Aws::Client::CoreErrors::SERVICE_EXTENSION_START_RANGE) + 1, 51 INVALID_INPUT, 52 LIMIT_EXCEEDED 53 }; 54 55 class AWS_MACIE_API MacieError : public Aws::Client::AWSError<MacieErrors> 56 { 57 public: MacieError()58 MacieError() {} MacieError(const Aws::Client::AWSError<Aws::Client::CoreErrors> & rhs)59 MacieError(const Aws::Client::AWSError<Aws::Client::CoreErrors>& rhs) : Aws::Client::AWSError<MacieErrors>(rhs) {} MacieError(Aws::Client::AWSError<Aws::Client::CoreErrors> && rhs)60 MacieError(Aws::Client::AWSError<Aws::Client::CoreErrors>&& rhs) : Aws::Client::AWSError<MacieErrors>(rhs) {} MacieError(const Aws::Client::AWSError<MacieErrors> & rhs)61 MacieError(const Aws::Client::AWSError<MacieErrors>& rhs) : Aws::Client::AWSError<MacieErrors>(rhs) {} MacieError(Aws::Client::AWSError<MacieErrors> && rhs)62 MacieError(Aws::Client::AWSError<MacieErrors>&& rhs) : Aws::Client::AWSError<MacieErrors>(rhs) {} 63 64 template <typename T> 65 T GetModeledError(); 66 }; 67 68 namespace MacieErrorMapper 69 { 70 AWS_MACIE_API Aws::Client::AWSError<Aws::Client::CoreErrors> GetErrorForName(const char* errorName); 71 } 72 73 } // namespace Macie 74 } // namespace Aws 75